一つのフォルダーに50個のエクセルファイルがあります。
各ファイルにはAとBのシートがあります。
50個エクセルファイルのBのシートをCのシートの内容に一括で変更し、シート名はBのままにします。
VBAをはじめて使おうと試みています。
cシートは別のフォルダに保存しています。
下記のコードでいいでしょうか?
また保存するときはどうしたらいいのでしょうか?
VBAはどのエクセルファイルからコードを入力すればいいでしょうか?50個のファイルのうちの一つですか?
Sub ReplaceBSheetContentWithTemplateC()
' 必要な情報の設定
Dim FolderPath As String: FolderPath = "C:\YourFolderPath\"' あなたのフォルダのパスを変更してください
Dim TemplatePath As String: TemplatePath = "C:\YourTemplatePath\TemplateFile.xlsx"' テンプレートファイルのパスを変更してください
' 他の変数の定義
Dim FileName As String
Dim TemplateWb As Workbook
Dim TargetWb As Workbook
' テンプレートファイルを開く
Set TemplateWb = Workbooks.Open(TemplatePath)
' フォルダ内の最初のExcelファイルの名前を取得
FileName = Dir(FolderPath &"*.xls*")
' フォルダ内のすべてのExcelファイルをループで処理
Do While FileName <>""' ファイルを開く
Set TargetWb = Workbooks.Open(FolderPath &FileName)
' Bシートの内容をクリア
TargetWb.Sheets("B").Cells.Clear
' テンプレートのCシートの内容をBシートにコピー
TemplateWb.Sheets("C").Cells.Copy Destination:=TargetWb.Sheets("B").Cells
' ファイルを保存して閉じる
TargetWb.Close SaveChanges:=True
' 次のファイルの名前を取得
FileName = Dir
Loop
' テンプレートファイルを閉じる
TemplateWb.Close SaveChanges:=False
End Sub
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
Excelファイルのバックアップをとった上で、2,3のExcelファイルに対して実行して、問題がなければ、50個に対して行う。
バグのないプログラムを初めから作るのは難しい。
No.1
- 回答日時:
こんにちは
>下記のコードでいいでしょうか?
なさりたいことが正確にはわかりかねますが、ざっと見る限り、ご提示のコードで動作すると思います。(テストはしていません)
質問する前に、テスト用のデータを作成して実行してみれば、お望みの通りかどうかはわかるのではないでしょうか?
>また保存するときはどうしたらいいのでしょうか?
保存していますよ?
>' ファイルを保存して閉じる
>TargetWb.Close SaveChanges:=True
>VBAはどのエクセルファイルからコードを入力すればいいでしょうか?
実行用のブックを作成して、そこに記述しておくのが確実だと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) シート名をフォルダ名に変更 1 2021/12/01 15:59
- Visual Basic(VBA) 空のシートに関数を入れたい 2 2021/12/03 15:08
- Visual Basic(VBA) EXCEL VBA シート貼り付け 3 2021/11/15 12:33
- Visual Basic(VBA) サブフォルダ含むすべてのフォルダの Excel 検索 4 2021/12/13 09:33
- Visual Basic(VBA) EXCLE VBA シートクリックしたら該当シートコピー 1 2021/11/11 16:37
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) EXCEL VBA シート比較し〇×判定 1 2021/11/19 11:49
- Visual Basic(VBA) シート名でファイル検索する 2 2021/11/30 17:05
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Visual Basic(VBA) 転記先VBA 一致しているセルがコピーされない 5 2021/11/15 17:23
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
【VBA】エクセルで最後の不要な改行コードを削除するコードについて
Visual Basic(VBA)
-
select case について
Visual Basic(VBA)
-
自動VBAマクロって会社の中で禁止なんですか?
Visual Basic(VBA)
-
-
4
Excel VBAでの数値の計算についておしえてください
Visual Basic(VBA)
-
5
基本情報技術者の擬似言語プログラム このプログラムの答えは(ウ)です。でも配列に格納されてる順番が良
Visual Basic(VBA)
-
6
Vba ユーザ定義関数について教えてください
Visual Basic(VBA)
-
7
【補足欄が足りなかったため、こちらで再質問させていただきます。】 Excelの転記マクロについて、教
Visual Basic(VBA)
-
8
VisualStudio2022をマクロみたいに自動プログラムを作成する方法を教えてください。
Visual Basic(VBA)
-
9
Excelマクロで空白セルの大小比較処理について
Visual Basic(VBA)
-
10
VBA 同じ名前のオブジェクトを選択したいのですが
Visual Basic(VBA)
-
11
VBA 何かしら文字が入っていたら
Visual Basic(VBA)
-
12
環境依存文字?をEnumで定義したい
Visual Basic(VBA)
-
13
ExcelのVBAのことで質問です。 以下のコードを入れ、ボタンを押せば作動させると写真のように画面
Visual Basic(VBA)
-
14
ExcelVBAのFindFirstエラーについて
Visual Basic(VBA)
-
15
VBA
Visual Basic(VBA)
-
16
離れた複数のセルのどこかに文字が入った場合に、⚫が表示されるようにしたいです
Visual Basic(VBA)
-
17
合計数量から引いていく
Visual Basic(VBA)
-
18
【VBA】エクセルで値のみクリップボードにコピーするコードについて(貼り付け時の空白削除)
Visual Basic(VBA)
-
19
xlsmファイルで、別名ファイルを保存する方法
Visual Basic(VBA)
-
20
xmlドキュメントから別拡張子で保存したい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
彼女の過去の恋愛に嫉妬してし...
-
[Unity]シーンファイルの中が消...
-
batでファイル名を変更したい(...
-
iCloud for Windowsをアンイン...
-
エクセルの拡張子XLSのファイル...
-
【VB6】ファイル保存:同名パス...
-
ファイルが移動してもリンクの...
-
OneDrive必要なものでしょうか
-
WINDOWS CMDからゴミ箱のファ...
-
xlsmファイルで、別名ファイル...
-
CreateFile関数によるCD/DVDへ...
-
5000個のtiffファイルをpdfへ変...
-
ファイルを別のフォルダに移動...
-
docxをmht形式で保存したファイ...
-
エクセルのマクロについて教え...
-
CSVファイルの特定行の削除
-
thunderbirdで特定のメールだけ...
-
特定のフォルダー内のエクセル...
-
あるマクロを起動し、その際に...
-
秀丸エディタでHTMLの部分のURL...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
iCloud for Windowsをアンイン...
-
vbsからのExcelマクロ呼び出し...
-
CSVファイルの特定行の削除
-
EXCELVBAにて文字列にして「01...
-
OneDrive必要なものでしょうか
-
Excel: ファイル名になぜ、[...
-
ファイルが移動してもリンクの...
-
複数のExcelファイルにある同名...
-
VBAにおいて、ファイルの移...
-
彼女の過去の恋愛に嫉妬してし...
-
Googleドライブについて
-
WINDOWS CMDからゴミ箱のファ...
-
[Unity]シーンファイルの中が消...
-
エクセルの拡張子XLSのファイル...
-
batでファイル名を変更したい(...
-
Excelに貼り付けた画像を圧縮す...
-
エクセルのファイル:「自分」が...
-
5000個のtiffファイルをpdfへ変...
-
VBA ファイル一覧を取得して全...
-
HTMLのリンクで、EXCELをIEでは...
おすすめ情報