În Microsoft Excel, obținerea de informații dintr-un registru de lucru închis este una dintre cele mai economisitoare de timp pentru a obține date precise folosind codul VBA. În acest articol, vom învăța cum să citiți informații dintr-un registru de lucru închis folosind VBA în Microsoft Excel.
Dacă primiți mai multe fișiere prin e-mail sau orice altă sursă și doriți să obțineți informații stocate într-o anumită celulă, atunci ar trebui să citiți acest tutorial.
Pentru a înțelege acest exemplu, trebuie să creăm câteva fișiere eșantion pe o cale pe care o vom folosi în codul VBA; aici, am salvat câteva fișiere (fișiere nord și vest) în calea „D: \ testing”.
Pentru a extrage date din toate fișierele Excel dintr-un folder, trebuie să urmăm pașii de mai jos pentru a lansa editorul VB:
- Faceți clic pe fila Dezvoltator
- Din grupul de coduri, selectați Visual Basic
- Copiați codul de mai jos în modulul standard
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" 'creează o listă de registre de lucru în folder' --- Comentariu wbCount = 0 wbName = Dir (FolderName & "\" & "* .xls") În timp ce wbName "" wbCount = wbCount + 1 ReDim Preserve wbList (1 To wbCount) wbList (wbCount) = wbName wbName = Dir Wend Dacă wbCount = 0 Apoi ieșiți din Sub 'obțineți valori din fiecare registru de lucru' --- Comentariu r = 0 Cărți de lucru. Adăugați pentru i = 1 La wbCount r = r + 1 cValue = GetInfoFromClosedFile (FolderName, wbList (i), "Sheet1", "A1") Celule (r, 1) .Formula = wbList (i) Celule (r, 2) .Formula = cValue Următorul i Sfârșitul funcției private GetInfoFromClosedFile (ByVal wbPath As String, _ wbName As String, wsName As String, cellRef As String) As Variant Dim arg As String GetInfoFromClosedFile = "" Dacă dreapta (wbPath, 1) "\" Atunci wbPath = wbPath & "\" If Dir (wbPath & "\" & wbName) = "" Atunci funcția de ieșire arg = "'" & wbPath & "[" & wb Nume & "]" & _ wsNume & "'!" & Range (cellRef). Adresă (True, True, xlR1C1) La eroare Reîncepeți Următorul GetInfoFromClosedFile = ExecuteExcel4Macro (arg) Funcția de sfârșit
Trebuie să rulăm macro-ul și următorul va fi instantaneul rezultatului:
Concluzie: Folosind codul de mai sus, putem obține date dintr-un registru de lucru închis dintr-o anumită celulă.
Notă: Celula A1 este utilizată ca exemplu; dacă doriți să preluați date din orice altă celulă, atunci trebuie pur și simplu să menționați acea celulă.
Dacă ți-au plăcut blogurile noastre, împărtășește-le prietenilor tăi de pe Facebook. Și, de asemenea, ne puteți urmări pe Twitter și Facebook.
Ne-ar plăcea să aflăm de la dvs., să ne anunțați cum putem îmbunătăți, completa sau inova munca noastră și să o îmbunătățim. Scrieți-ne pe site-ul de e-mail