Skaitykite informaciją iš uždaros darbaknygės naudodami „Microsoft Excel“ VBA

Anonim

„Microsoft Excel“ informacijos gavimas iš uždaros darbaknygės yra vienas laiko taupančių būdų, kaip gauti tikslius duomenis naudojant VBA kodą. Šiame straipsnyje mes išmoksime skaityti informaciją iš uždaros darbaknygės naudojant „Microsoft Excel“ VBA.

Jei el. Paštu ar bet kuriuo kitu šaltiniu gaunate kelis failus ir norite gauti tam tikroje ląstelėje saugomos informacijos, turėtumėte perskaityti šią mokymo programą.

Norėdami suprasti šį pavyzdį, turime sukurti tam tikrus failų pavyzdžius keliu, kurį naudosime VBA kodu; Čia mes išsaugojome keletą failų (Šiaurės ir Vakarų failai) „D: \ testing“ kelyje.

Norėdami išgauti duomenis iš visų „Excel“ failų aplanke, norėdami paleisti VB redaktorių, turime atlikti šiuos veiksmus:

  • Spustelėkite skirtuką Kūrėjas
  • Iš kodų grupės pasirinkite „Visual Basic“

  • Nukopijuokite žemiau esantį kodą į standartinį modulį
Sub ReadDataFromAllWorkbooksInFolder () Dim FolderName As String, wbName As String, r Kaip ilgas, cValue As Variant Dim wbList () As String, wbCount As Integer, i As Integer FolderName = "D: \ testing" 'sukurti darbaknygių sąrašą aplanko pavadinime' --- Komentuoti wbCount = 0 wbName = Dir (FolderName & "\" & "*.xls") Nors wbName "" wbCount = wbCount + 1 ReDim Išsaugoti wbList (1 To wbCount) wbList (wbCount) = wbName wbName = Dir Wend Jei wbCount = 0, tada Exit Sub 'gaukite reikšmes iš kiekvienos darbaknygės' --- Komentaras r = 0 Workbooks.Add For i = 1 WbCount r = r + 1 cValue = GetInfoFromClosedFile (FolderName, wbList (i), "Sheet1", "A1") Ląstelės (r, 1) .Formula = wbList (i) Ląstelės (r, 2) .Formula = cValue Kitas i Pabaiga Privati ​​funkcija GetInfoFromClosedFile (ByVal wbPath As String, _ wbName As String, wsName As String, cellRef Kaip eilutė) Kaip variantas Dim arg Kaip eilutė GetInfoFromClosedFile = "" Jei teisingai (wbPath, 1) "\" Tada wbPath = wbPath & "\" Jei Dir (wbPath & "\" & wbName) = "" Tada išeikite iš funkcijos arg = "" "& wbPath &" ["& wb Pavadinimas & "]" & _ wsVardas & "'!" & Diapazonas (cellRef). Adresas (tiesa, tiesa, xlR1C1) On Error Resume Next GetInfoFromClosedFile = ExecuteExcel4Macro (arg) End Function 

Turime paleisti makrokomandą ir rezultatas bus toks:

Išvada: Naudodami aukščiau esantį kodą, galime gauti duomenis iš uždarytos darbaknygės iš konkrečios ląstelės.

Pastaba: A1 langelis naudojamas kaip pavyzdys; jei norite gauti duomenis iš bet kurios kitos ląstelės, tiesiog turite paminėti tą langelį.

Jei jums patiko mūsų tinklaraščiai, pasidalykite jais su draugais „Facebook“. Taip pat galite sekti mus „Twitter“ ir „Facebook“.

Mes norėtume išgirsti jūsų nuomonę, praneškite mums, kaip galime patobulinti, papildyti ar naujovinti savo darbą ir padaryti jį geresnį. Parašykite mums el