VBA初心者です。
名前が一致した別ブックに転記していく作業ですが、全く分かりません。
動画や本を読んでいるのですが、わからないのでご教授いただける方がいましたら
お願い致します。
https://i.gyazo.com/4ecdc8983c4792f7b2399b3f07c4 …
上のシート名(ここではAさんとしておきます。)の同じ色の部分の数字を
別ブックの同じシートの同じところに転記していくマクロです。
https://i.gyazo.com/72d879bbb255b9a6a7c8f6fc3e73 …
上記のブックの『Aさん』を開くと
https://i.gyazo.com/6a1c7ae407e1d7cc9d6a5edef871 …
ここに転記していく様にしたいのですが、うまくいきません。
サンプルではA~Fまでですが、実際は30シートくらいあります。
名前が一致した別ブックに転記していく方法を是非ともご教授お願いします。
No.1
- 回答日時:
こんにちは
ご質問文からでは、どこがわからないのかが不明ですけれど・・・
シート名は worksheet.Name で取得できるので問題はないでしょうから、
>名前が一致した別ブックに転記していく方法を是非ともご教授お願いします。
ブックを探せればよいということでしょうか?
ブックは同じフォルダー内にあるようですから、
Dir(フォルダパス & "\" & ファイル名 & ".xlsx")
で検索すれば、対象ブックの有無を確認できます。
(存在しない場合は、空文字が返されます)
https://learn.microsoft.com/ja-jp/office/vba/lan …
必ずブックは存在するという保証があるのなら、わざわざ確認する必要もないので、直接ブックを開けば良いだけですね。
https://learn.microsoft.com/ja-jp/office/vba/api …
後は、普通にセルの値を転記するだけでしょうから、問題は無いものと推測します。
>同じ色の部分の数字を別ブックの同じシートの同じところに転記していく~
って、まさか、色だけが手掛かりでセルの位置を探して、そこに転記するって意味ではないですよね?
もしもそうなら、セルの Interior.Color をキーにして検索するというひと手間が必要になるでしょう。
また、その場合には、該当セルが複数存在する場合や存在しない場合にどうするのかなどの処理についても、あらかじめ考えておく必要があります。
No.2
- 回答日時:
No1です。
>転記する同じ名前のブックは違うフォルダに格納しています。
>その場合はどうするのでしょうか?
フルパスで指定すれば問題はありません。
パスは文字列ですので直接指定しても良いですし、No1の例のように文字列演算でパスを作成しても良いです。
No.3ベストアンサー
- 回答日時:
以下のマクロを標準モジュールに登録してください。
Const Folder As String = "D:\goo\data8\転記"
は、Aさん.xlsx等のブックを格納してあるフォルダ名です。
あなたの環境にあわせて適切に設定してください。
----------------------------------------
Option Explicit
Public Sub ブック間転記()
Const Folder As String = "D:\goo\data8\転記"
Dim ms As Worksheet
Dim wb As Workbook
Dim ws As Worksheet
Dim path As String
For Each ms In Worksheets
path = Folder & "\" & ms.Name & ".xlsx"
If Dir(path) = "" Then
MsgBox (path & "が存在しません")
Exit Sub
End If
Set wb = Workbooks.Open(path)
Set ws = wb.Worksheets("お申し出報告書")
ws.Cells(5, "E").Value = ms.Cells(6, "S").Value
ws.Cells(6, "E").Value = ms.Cells(6, "T").Value
ws.Cells(7, "E").Value = ms.Cells(6, "U").Value
ws.Cells(8, "E").Value = ms.Cells(6, "V").Value
wb.Save
wb.Close
Next
MsgBox ("完了")
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
[Excel]ADODBでNull変換されて...
-
ワイルドカード「*」を使うとう...
-
VBAで別ブックのシートを指定し...
-
エクセルVBAが途中で止まります
-
別ブックをダイアログボックス...
-
VBA アプリケーション定義また...
-
VBA シートをコピーする際に Co...
-
vbaで他のブックに転記したい。...
-
VBA 実行時エラー 2147024893
-
エクセルVBAで書式と値の貼付け...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBAで別のブックにシートをコピ...
-
VBA 別ブックからコピペしたい...
-
エクセル vba ある検索値を別ブ...
-
VBS Bookを閉じるコード
-
【ExcelVBA】インデックスが有...
-
VBA コードを実行すると画面が...
-
Excel2007VBAファイルの表示に...
-
拡張メタファイルにて貼り付け
-
【マクロ】違うフォルダにある...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートをコピーする際に Co...
-
エクセルVBAが途中で止まります
-
VBA 別ブックからコピペしたい...
-
別ブックをダイアログボックス...
-
ワイルドカード「*」を使うとう...
-
【マクロ】AブックからBブック...
-
【ExcelVBA】インデックスが有...
-
【ExcelVBA】zip圧縮されたCSV...
-
VBA コードを実行すると画面が...
-
VBA シート名が一致した場合の...
-
VBA 実行時エラー 2147024893
-
VBS Bookを閉じるコード
-
VBAで別のブックにシートをコピ...
-
VBAで別ブックのシートを指定し...
-
【マクロ】違うフォルダにある...
-
[Excel]ADODBでNull変換されて...
-
VBAで複数のブックを開かずに処...
-
【Excel VBA】書き込み先ブック...
-
Excelマクロ 該当する値の行番...
-
vbaでvbaProjectのパスワード解...
おすすめ情報
ありがとうございます。
色は分かりやすい様に塗っているだけで
実際はセル番地を入力して行こうと思っています。
転記する同じ名前のブックは違うフォルダに格納しています。
その場合はどうするのでしょうか?