• ベストアンサー

【エクセルVBA】WorksheetsのSelec

Worksheets(AA).Select を行って、それ以下のプログラムは シートを指定しなくても Worksheets(AA)からデータを取ってくるわけではないのでしょうか? アクティブシートから情報を取ってくることがあるので シートの指定の標準的な記述(手法?)を知りたいです。

質問者が選んだベストアンサー

  • ベストアンサー
  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.1

参照変数を用意し、それに Set します。 Dim ws As Excel.Worksheet Dim wsName As String wsName = "Sheet2" Set ws = ThisWorkbook.Worksheets(wsName) ws.Range("$A$1").Value = "test"

mougmoug
質問者

お礼

セットの例文ありがとうございます。 使わせてもらいます

その他の回答 (1)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

登録プロシージャが標準モジュール、シートモジュールでRange,Cells等のシート省略時の引用は以下の通りです。 ・標準モジュールはアクティブシート ・シートモジュールは常にそのシート 例えば、標準モジュールならシート選択すると以下のコードはその選択したシートが引用され、シートモジュールではプロシージャ登録シートなるという事です。 意識的にするなら、シートオブジェクト変数に設定やWithステートメントでしょうか。 シートオブジェクト例  Set st1 = Sheets("AA")  st1.Cells(1,1) = "aa" With例  With Sheets("AA")  .Cells(1,1) = "aa"  End With 

mougmoug
質問者

お礼

セットの方が今回は使い勝手良いのでそちらにします! ありがとうございます

関連するQ&A