
下記のマクロを実行すると,同じ作業フォルダ内の指定ファイル名に
作業ブックから、指定セル値をコピー出来きます。
コードの「"\【新行政報告】行政報告チェックリスト_Copy.xlsm")」をコピー先のファイルとして指定しております。
【新行政報告】行政報告チェックリスト_Copy.xlsmのgファイル名が物件によって
例えば
「【新行政報告】北海 太郎邸.xlsmとファイル名が変更になります、
先頭の「【新行政報告】」はどのファイルでも変更がありませんので
この部分をワイルドカードを使用して
「【新行政報告】*.xlsm」
と変更出来る方法を教えてください。
よろしくお願いいたします。
現状のマクロです。
Sub 新行政報告に項目コピー()
Dim wsfrom As Worksheet, wsto As Worksheet
Set wsfrom = ThisWorkbook.Sheets("1")
With Workbooks.Open(ThisWorkbook.Path & "\【新行政報告】行政報告チェックリスト_Copy.xlsm")
Set wsto = .Sheets("建築物(確認申請)(第1号様式)")
wsto.Range("C1") = wsfrom.Range("F10").Value
wsto.Range("C2") = wsfrom.Range("F13").Value
wsto.Range("V2") = wsfrom.Range("D39").Value
wsto.Range("B180") = wsfrom.Range("O24").Value
.Save
.Close
End With
End Sub
以上となります。
よろしくお願いいたします。
No.3ベストアンサー
- 回答日時:
>【新行政報告】の付いたファイル名は必ず1つしかありません
そうであれば、以下のようにしてください。
Sub 新行政報告に項目コピー()
Dim fname As String
Dim wsfrom As Worksheet, wsto As Worksheet
fname = Dir(ThisWorkbook.Path & "\" & "【新行政報告】*.xlsm")
If fname = "" Then Exit Sub
Set wsfrom = ThisWorkbook.Sheets("1")
With Workbooks.Open(ThisWorkbook.Path & "\" & fname)
Set wsto = .Sheets("建築物(確認申請)(第1号様式)")
wsto.Range("C1") = wsfrom.Range("F10").Value
wsto.Range("C2") = wsfrom.Range("F13").Value
wsto.Range("V2") = wsfrom.Range("D39").Value
wsto.Range("B180") = wsfrom.Range("O24").Value
.Save
.Close
End With
End Sub
No.2
- 回答日時:
マクロのあるブックと同じフォルダ内に
「【新行政報告】*.xlsm」にマッチするファイルは1つだけでしょうか。
それとも
【新行政報告】行政報告チェックリスト_Copy.xlsm
【新行政報告】北海 太郎邸.xlsm
のように2つ以上存在するケースもあるのでしょうか。
必ず1つだけ存在するのであれば、マクロの修正は可能ですが、
2つ以上存在するのであれば、No1の方が提示されている方法が良いかと思います。
回答ありがとうございます
作業フォルダ内には
【新行政報告】の付いた
ファイル名は必ず1つしかありません
よろしくお願い致します
No.1
- 回答日時:
検証できる環境ではないのですが。
>この部分をワイルドカードを使用して
>「【新行政報告】*.xlsm」
>と変更出来る方法を教えてください。
ブックを開くためには『ある特定のBook名』の指定が必要です。
なのでWith文においてワイルドカードの使用は不可能かなと。
もしおやりにやるなら、
https://excel-ubara.com/excelvba1/EXCELVBA374.html
http://officetanaka.net/excel/vba/tips/tips154.htm
等のようにコード実行者側で選択する必要があるのではないかと。
初級者レベルなので思い付きです。
⇒既存のBookを開くのですよね?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
frxファイルの役目
-
xcopyでのバッチコピー方法でコ...
-
[エクセル]コピーするとオブジ...
-
バッチファイル XCOPYで上書き...
-
エクセルで複数のコメントのサ...
-
DOSコマンドのコピー完了判定
-
VPN経由でExcelを開くのが遅い
-
エクセルのハイパーリンクがコ...
-
アクセス クエリを別のファイ...
-
Vba初心者です。下記のコード助...
-
「ファイルが見つかりません D...
-
Tabctl32.ocxについて
-
vb2008 フォームのコピー方法を...
-
ワードへのハイパーリンク貼り...
-
同じファイル名 上書きしないフ...
-
ファイルサーバ上のファイルが...
-
バッチファイルのコピーで
-
特定のエクセルファイルが止ま...
-
パワポでスライドをコピーでき...
-
他PCへのファイルコピー
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルで複数のコメントのサ...
-
frxファイルの役目
-
ファイルサーバ上のファイルが...
-
Vba初心者です。下記のコード助...
-
エクセルのハイパーリンクがコ...
-
同じファイル名 上書きしないフ...
-
xcopyでのバッチコピー方法でコ...
-
バッチファイル 別ファイルにリ...
-
[エクセル]コピーするとオブジ...
-
vbsでファイルやフォルダのコピ...
-
バッチファイルのコピーで
-
バッチファイル XCOPYで上書き...
-
現在のブックを閉じないで、マ...
-
bat 同名ファイルコピー時にリ...
-
エクセル2010、図が大きすぎま...
-
アクセス クエリを別のファイ...
-
ハイフネーションされている英...
-
特定のエクセルファイルが止ま...
-
マインクラフトPCをプレイしよ...
-
パワポでスライドをコピーでき...
おすすめ情報