###前提・実現したいこと
最終的に複数あるワークブックをまとめて、新たなひとつのワークブックにしたいです。必要なワークブックは特定のひとつのフォルダに入れてあります。しかしフォルダ内でファイル名が特定しづらいので新たにタイトルを書き換えることを考えています。ファイルに英語で期間が表示されていますので、そちらを利用し先頭に月と今の年号を追加したいです。 (例;〇〇Jan-July ならば 07_〇〇Jan-July)またそのタイトル変更したファイルを、新規のファイルにシートとして追加したいです。
###発生している問題・エラーメッセージ
Worksheets.Countにカーソルを合わせるとワークシート数が7と表示されるが、WBのワークシートは1.またCBのワークシートも1しかないため算出方法が分からない。またMstr.Titleの部分で、修飾子が無効ですと表示されてしまう。
###該当のソースコード
Sub test()
Dim WB As Workbook, CB As Workbook
Dim Mstr As String
Dim filefolder As String
Dim openname As String 'filefolderに存在するファイル
filefolder = "\rfs\EC_INTL\Common\IEC\DATA\TB\01_RDC" _
Workbooks.Add
ActiveWorkbook.SaveAs filename:=filefolder & "まとめ.xlsx", _ FileFormat:=xlNormal
Set WB = ActiveWorkbook 'まとめファイル
openname = Dir(filefolder & "*.xls?")
Do Until openname = ""
Workbooks.Open filename:=filefolder & openname
'フォルダーに存在するファイルを開ける
Set CB = ActiveWorkbook
Mstr = CB.Name 'フォルダーに存在するファイルに名前をつける
If Mstr = Dir(filefolder & "July.xls?") Then _
Mstr.Title = "07_jan" & openname
CB.Sheets.Copy after:=WB.Worksheets.Worksheets.Count
WB.Activate
CB.Close savechanges:=False
openname = Dir()
Loop
End Sub
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。