В Microsoft Excel получаването на информация от затворена работна книга е един от най-спестяващите време начини за получаване на точни данни с помощта на VBA код. В тази статия ще научим как да четем информация от затворена работна книга, използвайки VBA в Microsoft Excel.
Ако получавате множество файлове по имейл или друг източник и искате да получите информация, съхранявана в определена клетка, тогава трябва да прочетете този урок.
За да разберем този пример, трябва да създадем някои примерни файлове по път, който ще използваме във VBA кода; тук сме запазили няколко файла (файлове на север и запад) в пътя „D: \ testing“.
За да извлечем данни от всички Excel файлове в папка, трябва да следваме стъпките по -долу, за да стартираме VB редактор:
- Кликнете върху раздела Разработчик
- От групата кодове изберете Visual Basic
- Копирайте кода по -долу в стандартния модул
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" 'създайте списък с работни книги в името на папката' --- Коментар wbCount = 0 wbName = Dir (Име на папка & "\" & "*.xls") Докато wbName "" wbCount = wbCount + 1 ReDim Запазване wbList (1 За wbCount) wbList (wbCount) = wbName wbName = Dir Wend Ако wbCount = 0 След това излезте от 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") Клетки (r, 1). Формула = wbList (i) Клетки (r, 2). Формула = cValue Следваща i Крайна подзащитна функция GetInfoFromClosedFile (ByVal wbPath As String, _ wbName As String, wsName As String, cellRef As String) As Variant Dim arg As String GetInfoFromClosedFile = "" Ако е правилно (wbPath, 1) "\" Тогава wbPath = wbPath & "\" Ако Dir (wbPath & "\" & wbName) = "" След това излезте от функцията arg = "'" & wbPath & "[" & wb Име & "]" & _ wsName & "'!" & Обхват (cellRef). Адрес (Вярно, Вярно, xlR1C1) При възобновяване на грешка Следваща GetInfoFromClosedFile = ExecuteExcel4Macro (arg) Крайна функция
Трябва да стартираме макроса и следното ще бъде моментната снимка на резултата:
Заключение: Използвайки горния код, можем да получим данни от затворена работна книга от определена клетка.
Забележка: Клетка А1 се използва като пример; ако искате да извлечете данни от всяка друга клетка, просто трябва да споменете тази клетка.
Ако ви харесаха нашите блогове, споделете го с приятелите си във Facebook. Можете също така да ни следвате в Twitter и Facebook.
Ще се радваме да чуем от вас, уведомете ни как можем да подобрим, допълним или обновим работата си и да я подобрим. Пишете ни на имейл сайта