※当サイトの一部記事には広告を含みます。
うさねこ気まぐれ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)


免責事項

本記事のサンプルプログラムは動作・結果を保証するものではありません。 利用により発生したいかなるトラブル・損害についても、当方は責任を負いません。


広告
広告
バイオハザード レクイエム -Switch2
バイオハザード レクイエム -Switch2
■通常版
Nintendo Switch 2 パッケージ版(キーカード)については、以下が必要になります。 ・インターネット接続環境 ・30GB以上の空き容量 更新データなどで追加の空き容量が必要になる場合があります。はじめてプレイするときにソフト本編がダウンロードされます。詳しくは任天堂公式HPの「キーカードについて」のページをご確認ください。