
以下のコードを、もう少し短くする事はできますか?
別ファイルのファイルパスを変数に入れるコード
正常動作を確認
【条件】
マクロは、x.xlsmのに記載しています
転記元.xlsmのA10セルにある ファイルパス を変数に入れています
【コード】
Dim filepath3 As String
Dim wb3 As Workbook
Dim ws3 As Worksheet
filepath3 = "C:\Users\2020\OneDrive\マクロ\住所転記\コントロール.xlsm"
Set wb3 = Workbooks.Open(filepath3)
Set ws3 = wb3.Worksheets("転記元")
Dim filepath4 As String
Dim wb4 As Workbook
Dim ws4 As Worksheet
filepath4 = ws3.Cells(10, 1)
Set wb4 = Workbooks.Open(filepath4)
Set ws4 = wb4.Worksheets("サーベイデータ")

- 画像を添付する (ファイルサイズ:10MB以内、ファイル形式:JPG/GIF/PNG)
- 今の自分の気分スタンプを選ぼう!
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
書かれているコードだと、それぞれの変数を後に使用するのか不明です。
filepath3は独立で定義したほうが扱いやすいと思うので残すとして、
単にws4を取得するのが目的であるなら、こういうのではいかがでしょうか。
Dim filepath3 As String
Dim ws3 As Worksheet, ws4 As Worksheet
filepath3 = "C:\Users\2020\OneDrive\マクロ\住所転記\コントロール.xlsm"
Set ws3 = Workbooks.Open(filepath3).Worksheets("転記元")
Set ws4 = Workbooks.Open(ws3.Cells(10, 1).Value).Worksheets("サーベイデータ")
No.1
- 回答日時:
Option Explicit ' 変数の宣言を強制することをお勧めします
Sub ShortenCode_Pattern1()
Dim filepath3 As String
Dim wb3 As Workbook
Dim ws3 As Worksheet
filepath3 = "C:\Users\2020\OneDrive\マクロ\住所転記\コントロール.xlsm"
Set wb3 = Workbooks.Open(filepath3)
Set ws3 = wb3.Worksheets("転記元")
' ここに ws3 を使った処理を記述します
' 例: MsgBox ws3.Name
' 元のコードにあった filepath4, wb4, ws4 の宣言は、
' この部分までの処理では使用されていないため削除しました。
' もし後続の処理で別のファイルやシートを参照するために必要であれば、
' その際に改めて宣言してください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】アクティブセルの行のデータをクリアするマクロについて 1 2024/06/12 06:45
- Excel(エクセル) 【マクロ】コードを少しでも、減らする為には 4 2025/03/18 01:15
- Excel(エクセル) 【マクロ】1回目の実行後、2回目からは実行できないようにはできますか? 3 2025/02/18 21:20
- Excel(エクセル) 【マクロ】アクティブセルにブックやシートを指定する方法 2 2024/06/12 09:10
- Excel(エクセル) 【マクロ】毎回、ファイル名が変わるファイルへの 文字列の転記 2 2024/05/02 14:17
- Visual Basic(VBA) 【マクロ】1つのマクロの中に、ブック指定とシート指定が混在しても良いのですか? 2 2024/05/16 07:13
- Visual Basic(VBA) エクセルVBAについて 1 2024/05/06 12:26
- Excel(エクセル) 【マクロ】参照渡しとモジュールレベル変数 どっちが よく使うものですか? 2 2025/02/16 15:37
- Excel(エクセル) 【マクロ】2回実行したら、エラーにならずに、既に実行済みメッセージを出したい 2 2024/07/01 23:17
- Excel(エクセル) 【マクロ】セルに関数を入れる場合、列を追加した後に実行すると【文字列】になってしまう 1 2024/06/09 16:41
このQ&Aを見た人はこんなQ&Aも見ています
-
【マクロ】【相談】Excelブックとマクロを早く動くようにする為には?
Excel(エクセル)
-
(マクロ)値を返す時は subでもfunctionでもどちらでも良いのでしょうか?
Excel(エクセル)
-
エクセルの設定、下へスクロールすると表のヘッダ項目がシートの列番号の部分に表示される
Excel(エクセル)
-
-
4
エクセルのリストについて
Excel(エクセル)
-
5
【ExcelVBA】5万行以上のデータ比較の効率的な処理方法について
Visual Basic(VBA)
-
6
考えた式の戻り値が期待通りにならない
Excel(エクセル)
-
7
vbaマクロについて
Visual Basic(VBA)
-
8
算術演算子「¥」の意味について
Visual Basic(VBA)
-
9
Vba FileSystemObject オブジェクトに使って拡張子、BaseNameを取り出す
Visual Basic(VBA)
-
10
【マクロ】1回目の実行後、2回目からは実行できないようにはできますか?
Excel(エクセル)
-
11
Excelについて教えてください。
Excel(エクセル)
-
12
Vba Declare Functionを使う環境依存文字が化ける
Visual Basic(VBA)
-
13
【マクロ】値を渡されたプロシージャから実行すると、渡したプロシージャを選択される?
Visual Basic(VBA)
-
14
エクセルのマクロを記録して即実行したらエラー
Excel(エクセル)
-
15
【マクロ】宣言は、何のためにするんですか???しなくても、普通に動いしまうのはなぜ?
Excel(エクセル)
-
16
エクセルからメールを作れるか教えてください。
その他(Microsoft Office)
-
17
【マクロ】実行時エラー '424': オブジェクトが必要です。 について
Excel(エクセル)
-
18
エクセルの関数について
Excel(エクセル)
-
19
【マクロ】元データと同じお客様番号を別データから選択。その後別データに100を入力&色をつけるには?
Excel(エクセル)
-
20
【マクロ】列を折りたたみ非表示したセルの内、可視セルをコピーするとがエラーとなる
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】変数に入れるコード...
-
EXCEL VBA 指定したファイルが...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】名前を保存する際に...
-
フォルダ内のexcelファイルを順...
-
エクセル 複数ファイルの一括...
-
エクセルマクロで不特定なファ...
-
ファイルの保存場所を変えたら...
-
【Excel VBA】ファイル名が一...
-
エクセルの立ち上げ時とマクロ...
-
エクセル(マクロ)のファイル...
-
秀丸:あらかじめ設定した複数...
-
ファイルを開かずにマクロを実行
-
IEよりExcelを開いた場合にファ...
-
フォルダ内の複数ファイルの一...
-
データ参照先が別ファイルの場...
-
vlookup関数の引数を変数で指定...
-
Excelマクロで指定したファイル...
-
Excelファイルを開いた時に、特...
-
Accessのaccdbファイルを起動で...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】EXCELで読込したCSV...
-
EXCEL VBA 指定したファイルが...
-
【マクロ】名前を保存する際に...
-
フォルダ内のexcelファイルを順...
-
エクセルマクロで不特定なファ...
-
【Excel VBA】ファイル名が一...
-
ファイルを開かずにマクロを実行
-
フォルダ内のブック全部にパス...
-
EXCELマクロを無効にして開く方法
-
エクセル 複数ファイルの一括...
-
エクセル(マクロ)のファイル...
-
accessフォルダを移動したらフ...
-
秀丸:あらかじめ設定した複数...
-
データ参照先が別ファイルの場...
-
エクセルファイルを開く時、関...
-
Excelファイルがマクロを含むか...
-
ファイルの保存場所を変えたら...
-
エクセルのシートの数を数えた...
-
VBAでワークブックの名前を変数...
-
Excelのマクロでファイルを開く...
おすすめ情報