
下記のマクロは先日より教えて頂いたマクロです。
作業シート名「建築物(確認申請)(第1号様式)」の
セル値「AB1」の数字をワイルドカードで検索し
該当するファイルの指定シートを作業ブックのシートにコピーできますが、
作業シート名「建築物(確認申請)(第1号様式)」の
セル値「AB1」の数字が表示されていなくても
マクロを実行すると
指定フォルダ先のファイルを呼び込み、作業ブックにシートがコピーされてしまします。
マクロを実行し
作業シート名「建築物(確認申請)(第1号様式)」の
セル値「AB1」の数字が表示され、該当ファイルがある場合のみ
コピー元のシートを作業ブックにコピー出来る方法を教えてください。
宜しくお願い致します。
現状のマクロ
Application.DisplayAlerts = False
Dim srcFolderPath As String
Dim srcFileName As String
Dim srcSheetName As String
Dim destWorkbook As Workbook
Dim destSheet As Worksheet
Dim srcWorkbook As Workbook
Dim srcSheet As Worksheet
' コピー元のフォルダパスとファイル名を指定
srcFolderPath = "\\nas-sp01\share\確認部\行政報告フォルダ\☆確認済交付月別物件(完了検査対象)\2024年 【担当】確認番号 建物名称\03月\"
srcFileName = "*" & ThisWorkbook.Worksheets("建築物(確認申請)(第1号様式)").Range("AB1").Value & "*.xlsm"
' コピー先の作業ブックとシートを指定
Set destWorkbook = ThisWorkbook
Set destSheet = destWorkbook.Sheets("第4号様式(印刷用)")
' コピー元のファイルを検索
srcFileName = Dir(srcFolderPath & srcFileName)
' コピー元のブックを開く
Set srcWorkbook = Workbooks.Open(srcFolderPath & srcFileName)
'シート名の値を設定
arr = Array("受付", "青紙表", "1", "1号確認", "4号完了")
'シート名でループ
For Each sname In arr
' コピー元のシートを取得
Set srcSheet = srcWorkbook.Sheets(sname)
' コピー元のシート名を取得
srcSheetName = srcSheet.Name
' コピー元のシートをコピー先にコピー
srcSheet.Copy After:=destSheet
Next
' コピー元のブックを閉じる
srcWorkbook.Close SaveChanges:=False
Application.DisplayAlerts = True
End Sub
以上となります。
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
セル値「AB1」が空白の場合、処理をしないようにしたい。
と理解しました。以下の行をマクロの先頭に追加してください。
If ThisWorkbook.Worksheets("建築物(確認申請)(第1号様式)").Range("AB1").Value = "" Then Exit Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
VBA 別ブックからコピペしたい...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
複数シート名とブック名が一致...
-
別ブックをダイアログボックス...
-
Excel-VBAでのファイルの開き方
-
【ExcelVBA】zip圧縮されたCSV...
-
VBA シート名が一致した場合の...
-
特定文字を含むシート名の一覧...
-
VBAで別ブックのシートを指定し...
-
Dir関数で複数ブックへ行いたい...
-
【Excel VBA】書き込み先ブック...
-
[Excel]ADODBでNull変換されて...
-
Excel にて、 リストボックスの...
-
Excel VBAでRangeの指定をA1書...
-
拡張メタファイルにて貼り付け
-
VBSでExcelのオープン確認
-
サーバーに保存したエクセルフ...
-
エクセル VBA 他シートの行を選...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
別ブックをダイアログボックス...
-
VBA 別ブックからコピペしたい...
-
エクセルVBAが途中で止まります
-
ワイルドカード「*」を使うとう...
-
VBA コードを実行すると画面が...
-
VBAで別のブックにシートをコピ...
-
VBAで別ブックのシートを指定し...
-
【Excel VBA】書き込み先ブック...
-
Excelマクロ 該当する値の行番...
-
【ExcelVBA】zip圧縮されたCSV...
-
[Excel]ADODBでNull変換されて...
-
【ExcelVBA】インデックスが有...
-
Excel2007VBAファイルの表示に...
-
VBAで複数のブックを開かずに処...
-
vbaで他のブックに転記したい。...
-
エクセルマクロで、他ブックか...
-
vbaでvbaProjectのパスワード解...
-
VBA 実行時エラー 2147024893
-
【マクロ】違うフォルダにある...
おすすめ情報
どなたか、親切に教えて頂ける方、お願いいたします。