VBA超初心者です。画像のマクロで、With Application.FileDialog(msoFileDialogFolderPicker)~End Withの部分で最初から選ばず、毎回同じフォルダを開き、その中のフォルダを選択したらその後の処理をそのまま続けるにはどのようにしたらよいのでしょうか。
ChDir ThisWorkbbook. Path で、希望のフォルダは開けましたが後の処理につなげる方法を教えてください。よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんばんは、
>ChDir ThisWorkbook.Path
VBA実行ブックと同じフォルダ内で良いの?
であれば、すでに回答されていますね。
>毎回同じフォルダを開き、その中のフォルダを選択したら
その後の処理をそのまま続けるにはどのようにしたらよいのでしょうか。
フォルダピッカーの初期フォルダを指定したいと言う事でしょうか?
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = ThisWorkbook.Path
If .Show = True Then
dl_Dir = .SelectedItems(1)
End If
End With
If dl_Dir = "" Then Exit Sub
それともダイアログ自体出さないと言う事かな?
こんな手順は、どうでしょう。
作業よシートなどの使わないセルにパスを書くように確保します
例えばA1セル 文字は、希望の色、見えないようにするなら背景色と同じにするなど、、場合によっては非表示にできる列か行を指定しておくとか
プロシージャを実行する
初めに
if range("A1")="" then
ダイアログ表示
range("A1").value = .selectedItems(1)
end if
dl_Dir = range("A1").value
if range("A1")="" then は、簡単な例です。
エラー対策を考えるとDir関数などで所在を確認した方が良いでしょう。
ご質問を取り違えていたらごめんなさい。
回答ありがとうございます。希望どおりに実行でき大変助かりました。プロシージャ~のご説明も今後勉強して理解したいと思います。この度はありがとうございました。
No.3
- 回答日時:
理解不足で失礼しました。
恐らくNo.2さんの方法で出来ますよね。
No.1
- 回答日時:
1.With Application.FileDialog(msoFileDialogFolderPicker)~End Withは、
先頭に「'」をつけてコメント化(実行しないように)します。
'With Application.FileDialog(msoFileDialogFolderPicker)
'中略
'End With
2.SOURCE_DIR = dl_Dir & "\"の上の空行に、下のどちらかを入力します。
後者の場合は他のフォルダでもいいですが、最後に¥は入れないようにします。
dl_Dir = ThisWorkbook.Path
dl_Dir = "C:\Users\ユーザー名\Documents"
回答ありがとうございます。どちらもF8で実行しましたが、指定フォルダが開かずその中のフォルダも選択できませんでした。マクロファイルのあるフォルダがまず開かれて、その後同一フォルダ内の別フォルダを選択⇒開く⇒実行という動作をさせたいのです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/06 17:46
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/07/07 08:37
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/10/26 17:14
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- Visual Basic(VBA) 複数ブックの統合について Excel VBA 1 2022/05/13 09:48
- Visual Basic(VBA) 【マクロ】フォルダにファイルが1つも無い時に、ファイルがありませんとメッセージを表示する 4 2022/08/28 08:48
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/20 10:00
- Excel(エクセル) 【マクロ】フォルダAからダBへファイルを、ファイルの更新日時の条件で、1つづつ移動するには? 3 2022/08/25 09:56
- Visual Basic(VBA) 複数ファイルのデータの統合について 12 2022/05/14 12:03
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク 4 2023/07/05 19:32
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
windowsでテキストファイルの各...
-
パス名に2バイト文字(マルチバ...
-
vbsで選択ダイアログを表示した...
-
Excelで指定したフォルダに保存...
-
C ファイル出力で、フォルダが...
-
META-INFフォルダの置き場所に...
-
デスクトップの画像をhtmlに表...
-
エクセル VBA ファイルをフォ...
-
ファイル名と同名のフォルダを...
-
VBA:特定の文字を含むフォルダ...
-
サーバ内のフォルダ名と各フォ...
-
VBA フォルダ名に特定の文字を...
-
エクセルのデータをメモ帳に貼...
-
フォルダ配下のファイル作成日...
-
Excel VBA 同じ名前のフォルダ...
-
保存先のフォルダ名を指定した...
-
GetAttrが原因?
-
VBA 最新のフォルダ取得
-
自動的に作られるresource.hに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
パス名に2バイト文字(マルチバ...
-
ファイル名と同名のフォルダを...
-
VBA 最新のフォルダ取得
-
Excelのハイパーリンクについて...
-
デスクトップの画像をhtmlに表...
-
ディレクトリ名変更してコピー...
-
VBA フォルダ名に特定の文字を...
-
バッチファイルで指定フォルダ...
-
フォルダ内のPDFファイル名を変...
-
Access VBA で フォルダ権限...
-
excelマクロ 冒頭3文字が一致す...
-
【マクロ】ファイル名の日付に...
-
フォルダにリンクを貼りたい
-
会社のネットワーク上のファイ...
-
多量のファイルをフォルダに自...
-
C ファイル出力で、フォルダが...
-
保存先のフォルダ名を指定した...
-
vbsで選択ダイアログを表示した...
-
Excel VBA 同じ名前のフォルダ...
おすすめ情報
補足:画像のマクロを実行すると、階層から指定フォルダを選択し開くを押すと、フォルダ内のすべてのエクセルファイルのシートをコピペして1枚のシートにまとめ、同一フォルダ内に別ファイルで保存されます。