私は1つのファイルを選択して「ペン」タブをインポートすることができますが、複数のファイルを選択したいと思う次のコードがあります。VBA複数のシートをワークブックにインポート
複数のブックから、統合ブックのタブごとに「ペン」タブを選択したいと考えています。
これがどのように機能するか教えてください。私はこれがFor Each関数の使用を必要とするかもしれないと思うが、これをどのように構造化するかは不明である。非常に事前に
おかげ
Sub ImportActiveList()
Dim FileName As String
Dim WS1 As Worksheet
Dim WS2 As Worksheet
Dim ActiveListWB As Workbook
Set WS2 = ActiveWorkbook.Sheets("AllPens")
FileName = Application.GetOpenFilename(FileFilter:="Excel Files (*.xls*),*.xls*", _
Title:="Select Active List to Import", _
MultiSelect:=False)
If FileName = "False" Then
Exit Sub
Else
Set ActiveListWB = Workbooks.Open(FileName)
End If
Set WS1 = ActiveListWB.Sheets("Pens")
WS1.UsedRange.Copy WS2.Range("A1")
ActiveWorkbook.Close False
End Sub
こんにちは、ありがとう、私は 'VarType(FileName)= vbBooleanで、FileNameではない場合はデバッグエラーを取得している' – Vince
大変感謝です。私が変更したいのは、ユーザーがデータファイルを選択して一度に複数のファイルを選択できるようにすることです。これが可能なのは、特にそれらがたくさんある場合は、時間を大幅に節約できるからです。 – Vince
再度更新されました。ユーザーが複数のディレクトリからファイルを選択する必要がある場合は、ディレクトリごとにファイルを開くダイアログを表示する必要があります。このために、前のコードを編集する前に使用することができます(答えの下にある「*編集済み*」リンクをクリックしてください)。 – Leviathan