- 締切済み
EXCEL 任意のシートを選択するマクロ
よろしくお願いします。 シートがsheet1からsheet10まであります。 マクロのコマンドで、sheets("sheet1") 等がありますが、 sheet11のA1セルに入力したシート名(たとえば、sheet6)を このマクロのコマンドに当てはめる事はできないものでしょうか? A1セルに入力したシート名と同じシートを参照するようなコマンドであると助かります。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- keithin
- ベストアンサー率66% (5278/7941)
>A1セルに入力したシート名と同じシートを参照するような Sheet1のA1にSheet6とか記入するとして。 素直に worksheets(worksheets("Sheet1").range("A1").value).select とかでいいです。
- mar00
- ベストアンサー率36% (158/430)
Sheet11のシート名のところで右クリック→コードの表示を選択して貼り付けて下さい。 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address <> "$A$1" Then Exit Sub mySh = "sheet" & Range("A1") Sheets(mySh).Select End Sub Sheet6を開きたい時はA1に6を入力 A1の表示をSheet6としたいのであれば書式で"Sheet"0と設定すればいいと思います。
お礼
回答ありがとうございます
- FEX2053
- ベストアンサー率37% (7995/21381)
文字列の変数で受ければ良いだけの話なんじゃ?例えば Dim SHEET_N as String としておいて(しなくても良いかもだけど) SHEET_N = Cstr(Sheets("Sheet11").Range("A1").Value) Sheets(SHEET_N).Activate とかですかね。要は「文字列変数にシート名を設定」すれば 良いだけの話です。
お礼
回答ありがとうございます
お礼
回答ありがとうございます