サンプル集  >  Excel VBA  >  他のブックのシートをコピーする
他のブックのシートをコピーする
2017/08/08

他のブックのシートをコピーします。

◆環境
OS Windows 7 Professional Service Pack 1 32bit
VBA 7.1

Excelシートにボタンを配置します。

ボタンを押すと「ファイルを開く」ダイアログを表示します。 Excelブックを指定すると、そのブックの全てのシートをコピーします。

Summary.xlsm
 1: 
 2: 
 3: 
 4: 
 5: 
 6: 
 7: 
 8: 
 9: 
10: 
11: 
12: 
13: 
14: 
15: 
16: 
17: 
18: 
19: 
20: 
21: 
22: 
23: 
24: 
25: 
26: 
27: 
28: 
29: 
30: 
Sub Summary_Click()

    Dim wb As Workbook
    Dim ws As Worksheet

    ' ファイルを選択
    Dim FileName As String
    FileName = Application.GetOpenFilename( _
                 "Excel ファイル,*.xlsx" _
               )
    If FileName = "False" Then
        MsgBox "ファイルを指定してください。"
        Exit Sub
    End If

    With ThisWorkbook
     
        ' ファイルを開く
        Set wb = Workbooks.Open(FileName)

        ' 開いたファイルの全てのワークシートをコピー
        For Each ws In wb.Worksheets
            ws.Copy after:=.Worksheets(.Worksheets.Count)
        Next ws

        ' ファイルを閉じる
        wb.Close
    End With

End Sub

Excelブックを開きボタンを押します。 適当なExcelを選択すると、画面がパッパッとなり選択したExcelのシートが全てコピーされました。

▲ PageTop  ■ Home


Copyright (C) 2017 ymlib.com