- ベストアンサー
セル内の文字をシート名として使いたい。
Excel2000または2002です。 セル内の文字例えばA1に「あいう」と入力されていたら その「あいう」というのをシート名として使うことはできますか? VBAでよろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
以下のマクロをお使いください。 Sub Macro1() ActiveSheet.Name = Range("a1") End Sub
その他の回答 (1)
- ja7awu
- ベストアンサー率62% (292/464)
例えば、全てのシートで機能するとすれば、こんな感じです。 ThisWorkbook に記述します。 Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) Dim s As Integer Dim chk As Boolean Set Target = Target.Resize(1.1) If Target.Address <> "$A$1" Then Exit Sub If Target.Value = "" Or LenB(Target.Value) > 31 Then Exit Sub For s = 1 To Len(Target.Value) If InStr(":\/?*[]", Mid(Target.Value, s, 1)) > 0 Then MsgBox "シート名に使えない記号が含まれています。", vbQuestion Exit Sub End If Next s For s = 1 To Sheets.Count If s <> ActiveSheet.Index And _ StrConv(Sheets(s).Name, vbLowerCase) = _ StrConv(Target.Value, vbLowerCase) Then chk = True Exit For End If Next s If chk = False Then ActiveSheet.Name = Target.Value Else MsgBox "そのシート名は、すでに存在します。" End If End Sub
お礼
できました・・ ありがとうございます。
お礼
ありがとうございました。