• 締切済み

エクセルで、D2に入力した文字をそのシート名に

エクセルで、D2に入力した文字をそのシート名にする事は可能なものでしょうか いくつか調べて、試したりしたのですが、どうもうまくいかず。。。 お分かりの方いらっしゃいましたらご伝授願えませんでしょうか 宜しくお願い致します

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! 質問を読む限りでは、すべてのSheetでそうしたいのか? それともあるSheetのD2セルの値が変わったときにそのSheet名をD2セルの値にしたいのか? が判断しかねますが・・・ いずれにしてもVBAでの一例です。 (1)すべてのSheetの場合 Alt+F11キー → 左下の「This Workbook」をダブルクリック → VBE画面に ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub Sheet名() 'この行から Dim k As Long For k = 1 To Worksheets.Count If Worksheets(k).Range("D2") <> "" Then Worksheets(k).Name = Worksheets(k).Range("D2") End If Next k End Sub 'この行まで (2)そのSheet限定の場合 画面左下の操作したいSheet見出し上で右クリック → コードの表示 → VBE画面に ↓のコードをコピー&ペーストし、D2セルのデータを色々変更してみてください。 Private Sub Worksheet_Change(ByVal Target As Range) 'この行から If Intersect(Target, Range("D2")) Is Nothing Or Selection.Count <> 1 Then Exit Sub If Target <> "" Then ActiveSheet.Name = Target Else Exit Sub End If End Sub 'この行まで ※ 外していたらごめんなさいね。m(_ _)m

関連するQ&A