- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBAでデータ更新作業自動化)
VBAでデータ更新作業自動化
このQ&Aのポイント
- エクセルファイルのデータ更新作業をVBAで自動化する方法について教えてください。
- エクセルのシート1にある顧客データを、シート2の入力セルに入力することで呼び出すことができますが、この作業を自動化したいです。
- 最新の顧客データを更新するために、定期的に抽出したCSVファイルのデータを元のエクセルファイルにコピー&ペーストしたいです。VBAの記述方法を教えてください。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
どこで躓いているのか具体的にわかりませんが、他ファイルを開いて参照したい場合でも、やることは手作業ですることとほぼ同じです。 注意点が一つだけあって、「今アクティブなワークブックか」「今作業対象としたいワークブック/シートはどれか」というのをわかりやすくするための「目印」をつけることだけです。 以下のような感じだと思います。 '現在のブックと作業シート(Sheet1)をセット Set MyBook = ActiveWorkbook Set Mysheet = MyBook.Worksheets("Sheet1") Set Acsheet = ActiveSheet: 'アクティブシート(=フォームのボタンがあるシート) 'CSVのブックと対象シートをセット。 Set SubBook = Workbooks.Open("C:\test.csv"): 'ファイル/ディレクトリはダミー Set Subsheet = SubBook.Worksheets(1): 'CSVをExcelで開いた場合はシートは一つしかない=インデックスは1 'Sheet1のセルの値を全クリア Mysheet.Cells.Clear 'CSVのデータをSheet1に全コピー Subsheet.Cells.Copy Mysheet.Cells 'CSVを閉じる。 SubBook.Close 'ターゲットをボタンのあるシートに戻す。 Acsheet.Activate 以上ですが、テストはコピーしたファイルで行ってください。
お礼
早速のご回答ありがとうございます。 出来ましたので、ありがとうございました(^^)