※当サイトの一部記事には広告を含みます。
うさねこ気まぐれPG開発室

Excel VBA 別エクセルブックを開いてシートをVBA実行Bookにコピーする 

別エクセルブックを開いてシートをVBA実行Bookにコピー

うさこちゃん
うさこちゃん

このサンプルは別エクセルブックを開いてシートをVBA実行しているBookへのコピーのやり方です。
別Book(別エクセルファイル)シート👉VBAを実行してるBookにシートコピー

サンプルコード

うさこちゃん
うさこちゃん

サンプルコードでは最終のシートの後に追加しています。

    Dim ObjOpenBook       As Object
    Dim StrSheetName      As String
    Dim StrOpenFilePath   As String

    StrOpenFilePath = "C:\Data\データ.xlsx"

    'ファイルを開く
    Set ObjOpenBook = Workbooks.Open(StrOpenFilePath)
    
    'シートをコピー
    StrSheetName = ObjOpenBook.Worksheets(1).Name 'コピーするシートの指定
    ObjOpenBook.Worksheets(StrSheetName).Copy_
      After:=ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count)
    
    ' -----------------------------------------------------------------
    ' - 処理
    ' -----------------------------------------------------------------
        
    'ファイル閉じる。
    Workbooks(ObjOpenBook.Name).Close

コピーシートの位置

  • Before 指定した位置の前にコピー
    Before:=ThisWorkbook.Worksheets(1)
  • After 指定した位置の後にコピー
    After:=ThisWorkbook.Worksheets(1)

*ThisWorkbook.Worksheets(1) 👉はシート名を指定することも可能です。

  • シート最後にコピー
    After:=ThisWorkbook.Worksheets(ThisWorkbook.Worksheets.Count)


免責事項

本記事のサンプルプログラムは、学習・参考用として掲載しているもので、動作や結果を保証するものではありません。 利用する場合は、ご自身の環境に合わせて確認しながらお使いください。万が一トラブルや損害が発生した場合でも、当サイトでは責任を負いかねます。


広告
プレミアムプラン ふるさと納税

※本文中に記載の会社名・製品名・サービス名・ゲームタイトル名等は、各社の商標または登録商標であり、権利は各社に帰属します。

※サンプルはテストを行っていますが、すべての環境での動作を保証するものではありません。ご利用は自己責任でお願いいたします。

※本記事の仕様・価格・対応状況等は執筆時点で確認できた情報をもとに掲載しています。最新の情報はメーカー公式サイトをご確認ください。

※当サイトでは一部の記事において、アイキャッチ画像にAI生成を使用しています。