目次
で マイクロソフトエクセル , VBAマクロ を使えば、さまざまな問題を簡単に解決することができます。 ワークブックを開かずに他のワークブックからデータをコピーしたい場合は、次のようにすれば簡単にできます。 エクセルブイビーエー この記事では、以下のことを学びます。 エクセルブイビーエー を使えば、他のワークブックを開かずにデータをコピーすることができます。
練習用ワークブックをダウンロードする
ワークブックをダウンロードして、一緒に練習することができます。
別のワークブックのデータをコピーする.xlsmExcel VBAで開かずに別のワークブックからデータをコピーする3種類の方法
時には、以前のワークブックのデータが必要になることがあります。 急いでいて、ワークブックを開かずにすぐにデータが必要な場合は エクセルブイビーエー Excel VBAを使えば、他のワークブックからデータをすばやくコピーすることができ、そのためには、特定のワークブックの場所を知る必要があります。
データをコピーするために、ワークブック名を使用します。 製品詳細 そして、データ範囲をコピーしたいのです( B4:E10 コピーしたいデータセットには、いくつかの商品とその販売価格、商品原価、粗利率が含まれています。 別のワークブックからデータをコピーするためのさまざまな基準を見てみましょう。
1.ExcelVBAで開かずに別のワークブックからシートデータをコピーする
に従って、シートからデータをコピーすることができるのです。 ブイビーエー そのためには、以下の手順を踏む必要があります。
STEPS
- まずは デベロッパー タブをクリックします。
- その後 ビジュアルベーシック を開いてください。 Visual Basic エディター .
- もうひとつの開き方 Visual Basic エディター を押すだけです。 Alt + F11 .
- または、シート上で右クリックし 表示コード .
- では、書き出してみましょう。 VBAコード を下回る。
VBAコードです。
Sub Copy_Data_from_Another_Workbook() Dim wb As Workbook Dim newwb As Workbook Dim rn1 As Range Dim rn2 As Range Set wb = Application.ActiveWorkbook With Application.FileDialog(msoFileDialogOpen) .Filters.Clear .Filters.Add "Excel 2007-13", "*.xlsx; *.xlsm; *.xlsa" .AllowMultiSelect = False .Show If .SelectedItems.Count> 0 Then Application.Workbooks.Open....SelectedItems(1) Set newwb = Application.ActiveWorkbook Set rn1 = Application.InputBox(prompt:="Select Data Range", Default:="A1", Type:=8) wb.Activate Set rn2 = Application.InputBox(prompt:="Select Destination Range", Default:="A1", Type:=8) rn1.Copy rn2 rn2.CurrentRegion.EntireColumn.AutoFit newwb.Close False End If End With End SubEnd With End Sub
- 最後に、コードを実行するために ラン・サブ ボタンを押す一方で、キーボードショートカット F5 キーを押して、コードを実行します。
注 コードを修正する必要はありません。 コピペしてお使いください。
- コードを実行することで ファイルを開く のウィンドウがコンピュータから表示されます。
- その後、データを収集したいワークブックをクリックします。
- 次に よっしゃー ボタンをクリックします。
- ここで、ソースファイルからデータをドラッグして範囲選択する B5:E10 をクリックします。 よっしゃー .
- データ範囲を選択したら、今度はデータを置く先の範囲を選択します。
- をクリックします。 よっしゃー .
- 最後に、コピー元のファイルを閉じると、コピー先のファイルにデータがコピーされます。
続きを読む Excel VBA: 範囲を別のワークブックにコピーする
類似の読み物
- VBAを使用してクリップボードからExcelに貼り付ける方法
- マクロを使わないExcelのコピー&ペーストを無効にする(2つの条件付き)
- エクセルで非表示の行をコピーする方法(4つの簡単な方法)
- 条件に基づいて行を別のワークシートにコピーするExcel VBA
- VBAを使ってExcelで書式なしの値だけを貼り付ける方法
2.Excelで開かずに他のワークブックのデータ範囲をコピーするVBA
を使うことで、より効果的になります。 ブイビーエー 以下のコードで、データ範囲からデータをコピーすることができます。 これを実現するには、以下のステップを踏む必要があります。
STEPS
- はじめに デベロッパー タブをクリックします。
- 2つ目は Visual Basic エディター をクリックすると ビジュアルベーシック を押すか、または Alt + F11 .
- または、単にシート上で右クリックし 表示コード を開いてください。 Visual Basic エディター .
- その後、書き込んでください。 VBAコード そこに
VBAのコードです。
Sub CollectData() Dim rgTarget As Range Set rgTarget = ActiveSheet.Range("B2:E10") 'コピーしたデータの格納場所 rgTarget.FormulaArray = "='D:\[Product_Details.xlsx]Sheet1'!$B$4:$E$10" rgTarget.Formula = rgTarget.Value End Sub.
- ここで、コードを実行するには 実行 サブ またはキーボードショートカット F5 を実行してください。
注 コードを修正する必要はなく、ソースデータに合わせて範囲を変更するだけでよいのです。
- そして最後に、別のワークブックからアクティブなワークブックにデータがコピーされるようになりました。
続きを読む ワークシートから別のワークシートへコピー&ペーストするマクロ(15の方法)
3.コマンドボタンで開かずに別のワークブックからデータをコピーするExcel VBA
のコマンドボタンで、他のワークブックからデータをコピーすることができます。 ブイビーエー そのためには、次のような手順が必要です。
STEPS
- をつけるのが第一。 コマンドボタン にアクセスしてください。 デベロッパー タブで表示します。
- 2つ目は インサート のドロップダウン・メニューがあります。
- 3つ目は コマンドボタン .
- を入れました。 製品 オンセル A1 を、ソースファイルのシート名として設定します。 コマンドボタン これでテーブルが作成されましたので、あとは別のワークブックにあるデータが必要なだけです。
- 同じ要領で デベロッパー タブをクリックします。
- 次に、「」をクリックします。 ビジュアルベーシック を押すか Alt + F11 を起動します。 Visual Basic エディター .
- を開くこともできます。 Visual Basic エディター シート上で右クリックし 表示コード .
- では、書いてみましょう。 ブイビーエー コードダウン
VBAコードです。
Private Sub CommandButton1_Click() Dim sourceworkbook As Workbook Dim currentworkbook As Workbook Set currentworkbook = ThisWorkbook Set sourceworkbook = Workbooks.Open("D:\Products_Details.xlsx") sourceworkbook.Worksheets("Product").Range("B5:E10").Copy currentworkbook.Activate currentworkbook.Worksheets("Sheet3").Activate 現在のワークブック(シート 3).Cells(4, 1).Select アクティブシート(貼りつけ) ※このファイルは、workbook.workwork.worksheets(シートシート 3).ScreenSheets(シート 3).Activity(アクティブシート).Paste(アクティブシート).Paste(ペースト).Paste(アクティブシート).Copy (アクティブシート).Copy (アクティブシート).Copy (アクティブシートsourceworkbook.Close Set sourceworkbook = Nothing Set currentworkbook = Nothing ThisWorkbook.Activate Worksheets("Sheet3").Range("A2").Select End Sub
- を押して、コードを保存します。 Ctrl + S .
注 コードをコピーして、ファイルパスとデータ範囲を変更するだけです。
- そして、最後に、クリックすると コマンドボタン1 をクリックすると、他のワークブックを開かずにデータをコピーすることができます。
続きを読む あるワークブックから別のワークブックに条件に基づいてデータをコピーするマクロ
結論
で開かずに、他のワークブックからデータをコピーするためのガイドラインです。 エクセルブイビーエー これがあなたの助けになることを願っています!ご質問、ご提案、ご意見がありましたら、コメント欄でお知らせください。 または、他の記事もご覧ください。 エクセルWIKI.com ブログ