VBAの宣言DIMで各プロシージャ事に宣言することは、

Visual Basic43閲覧

ベストアンサー

0

Function ws() As Worksheet Set ws = Workbooks("A.xlsm").Sheets("Sheet1") End Function で設定しましたが、インデックスが有効範囲にありません。 メッセージエラーが表示されました。

その他の回答(2件)

0

質問者さんがやりたいのは多分こういうのだと思いますけれども。 Dim sh As Worksheet Sub Sample1() Set sh = ActiveSheet sh.Range("A1").Copy End Sub Sub Sample2() sh.Range("A1").Copy End Sub Worksheet型変数は、Set 変数 = です。 それと、一回でも「プロシージャ内で」変数を格納する必要があるので、上記の例だとSample1を実行後はSample2で同じ変数を使えますが、Sample2をいきなり実行はできないです。