Läs information från en sluten arbetsbok med VBA i Microsoft Excel

Innehållsförteckning

I Microsoft Excel är att få information från en sluten arbetsbok ett av de mest tidsbesparande sätten att få korrekta data med VBA-kod. I den här artikeln lär vi oss hur man läser information från en sluten arbetsbok med VBA i Microsoft Excel.

Om du får flera filer via e -post eller någon annan källa och du vill få information lagrad i en viss cell, bör du läsa den här självstudien.

För att förstå detta exempel måste vi skapa några exempelfiler i en sökväg som vi kommer att använda i VBA -kod; här har vi sparat några filer (North & West -filer) i "D: \ testing" -vägen.

För att extrahera data från alla excel -filer i en mapp måste vi följa stegen nedan för att starta VB -editor:

  • Klicka på fliken Utvecklare
  • Välj Visual Basic i kodgruppen

  • Kopiera koden nedan i standardmodulen
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' --- Kommentera wbCount = 0 wbName = Dir (mappnamn & "\" & "*.xls") Medan wbName "" wbCount = wbCount + 1 ReDim Preserve wbList (1 till wbCount) wbList (wbCount) = wbName wbName = Dir Wend Om wbCount = 0 Avsluta sedan Sub 'get values ​​from each workbook' --- Kommentar 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 & "[" & wb Namn & "]" & _ wsName & "'!" & Range (cellRef) .Address (True, True, xlR1C1) Vid fel Återuppta nästa GetInfoFromClosedFile = ExecuteExcel4Macro (arg) Avsluta funktion 

Vi måste köra makrot och följande blir ögonblicksbilden av resultatet:

Slutsats: Med ovanstående kod kan vi få data från sluten arbetsbok från en specifik cell.

Obs: Cell A1 används som exempel; om du vill hämta data från någon annan cell behöver du bara nämna den cellen.

Om du gillade våra bloggar, dela den med dina vänner på Facebook. Och du kan också följa oss på Twitter och Facebook.

Vi vill gärna höra från dig, låt oss veta hur vi kan förbättra, komplettera eller förnya vårt arbete och göra det bättre för dig. Skriv till oss på e -postwebbplatsen

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave