Microsoft ExcelでVBAを使用して、閉じたブックからの情報を読む
Microsoft Excelでは、閉じたブックから情報を取得することは、VBAコードを使用して正確なデータを取得するための最も時間を節約する方法の1つです。この記事では、MicrosoftExcelでVBAを使用して閉じたブックから情報を読み取る方法を学習します。
電子メールまたはその他のソースを介して複数のファイルを取得していて、特定のセルに保存されている情報を取得したい場合は、このチュートリアルを読む必要があります。
この例を理解するには、VBAコードで使用するパスにいくつかのサンプルファイルを作成する必要があります。ここでは、「D:\ tests」パスにいくつかのファイル(NorthおよびWestファイル)を保存しました。
フォルダ内のすべてのExcelファイルからデータを抽出するには、次の手順に従ってVBエディタを起動する必要があります。
[開発者]タブをクリックし、[コード]グループから[VisualBasic]を選択します
-
以下のコードを標準モジュールにコピーします
Sub ReadDataFromAllWorkbooksInFolder() Dim FolderName As String, wbName As String, r As Long, cValue As Variant Dim wbList() As String, wbCount As Integer, i As Integer FolderName = "D:\testing" ' create list of workbooks in foldername' --- Comment wbCount = 0 wbName = Dir(FolderName & "\" & "*.xls") While wbName <> "" wbCount = wbCount + 1 ReDim Preserve wbList(1 To wbCount) wbList(wbCount) = wbName wbName = Dir Wend If wbCount = 0 Then Exit Sub ' get values from each workbook' --- Comment r = 0 Workbooks.Add For i = 1 To wbCount r = r + 1 cValue = GetInfoFromClosedFile(FolderName, wbList(i), "Sheet1", "A1") Cells(r, 1).Formula = wbList(i) Cells(r, 2).Formula = cValue Next i End Sub Private Function GetInfoFromClosedFile(ByVal wbPath As String, _ wbName As String, wsName As String, cellRef As String) As Variant Dim arg As String GetInfoFromClosedFile = "" If Right(wbPath, 1) <> "\" Then wbPath = wbPath & "\" If Dir(wbPath & "\" & wbName) = "" Then Exit Function arg = "'" & wbPath & "[" & wbName & "]" & _ wsName & "'!" & Range(cellRef).Address(True, True, xlR1C1) On Error Resume Next GetInfoFromClosedFile = ExecuteExcel4Macro(arg) End Function
マクロを実行する必要があります。結果のスナップショットは次のようになります:
===
結論:上記のコードを使用すると、特定のセルの閉じたブックからデータを取得できます。
注:セルA1が例として使用されています。他のセルからデータを取得する場合は、そのセルについて言及するだけです。
私たちのブログが気に入ったら、Facebookで友達と共有してください。また、TwitterやFacebookでフォローすることもできます。
_私たちはあなたからの連絡をお待ちしております。私たちの仕事を改善、補完、または革新し、あなたのためにそれをより良くする方法を教えてください。 [email protected]_までご連絡ください