EXCEL VBAマクロでフォルダに入っているEXCELブックのシートを参照して集計ブックに保存していきたいが、シート名が違う
ご質問させていただきます。
EXCEL VBAマクロでフォルダに入っているEXCELブックのシートを参照して集計ブックに保存して行こうと下記のマクロで動かしておりますが、
現在、EXCELブック(名前は複数)のシートAのG1とF25を引っ張り、集計ブックに入れ込んでおります。
しかし、新たにシートBのH1とG25を引っ張る必要がでてきました。
ただシートの名前が違う状況ですと、抽出する事ができず、違うシート名のブックにあたった時点でデバッグエラーと出てしまいます。
下記のマクロで
Do Until myFile = ""
Workbooks.Open myPath & myFile
With Workbooks("集計.xls").Worksheets("Sheet1").Range("A65536").End(xlUp)
.Offset(1, 0).Value = myFile
.Offset(1, 1).Value = Workbooks(myFile).Worksheets("シートA").Range("G1").Value
.Offset(1, 2).Value = Workbooks(myFile).Worksheets("シートA").Range("F25").Value
もしシート名がシートBならばH1を抽出
End With
くわえて、参照するデータが無ければデバッグエラーではなく無視してマクロ続行というマクロは組み込めるのでしょうか。
大変恐縮ですが、ご教示の程よろしくお願い致します。
Sub macro1()
Dim myPath As String
Dim myFile As String
myPath = "C:\Users\test\Desktop\フォルダ1"
myFile = Dir(myPath & "*.xls")
Do Until myFile = ""
Workbooks.Open myPath & myFile
With Workbooks("集計.xls").Worksheets("Sheet1").Range("A65536").End(xlUp)
.Offset(1, 0).Value = myFile
.Offset(1, 1).Value = Workbooks(myFile).Worksheets("シートA").Range("G1").Value
.Offset(1, 2).Value = Workbooks(myFile).Worksheets("シートA").Range("F25").Value
End With
Workbooks(myFile).Close savechanges:=False
myFile = Dir()
Loop
End Sub
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/03/05 06:54
2020/03/05 06:57
2020/03/05 07:00