VBA - на основе идентификаторов, динамически открывать книги в каталоге и вставлять значение из каждого? - PullRequest
0 голосов
/ 15 января 2019

У меня есть несколько сотен файлов Excel в каталоге, каждый с уникальным идентификатором где-то в имени, 103, 208c, 231a и т. Д. Идентификаторы размещены в столбце в рабочей книге с кодом.Основываясь на этих идентификаторах, я пытаюсь динамически открыть книгу, содержащую строку текста, и вставить одну ячейку рядом с ее идентификатором книги.

Я пытался заставить его работать для одного случая ниже, но после того, как динамический файл откроется, макрос завершается, а не выбирает значение и вставляет его.Если у кого-нибудь есть какие-либо предложения о том, как это исправить или как переключить этот код с одного случая на динамический / основанный на цикле, я был бы очень признателен.Я относительно новичок в кодировании VBA.Обычно нужно только редко читать его / переходить через существующий код.

Option Explicit
Sub Process()
On Error Resume Next
Application.DisplayAlerts = False
Application.AskToUpdateLinks = False

Dim sFound As String, fPath As String
Dim BaseFile As Workbook
Dim TestSheet As Worksheet
Dim WB1 As Workbook
Set TestSheet = ThisWorkbook.Sheets("TestSheet")
Set BaseFile = ThisWorkbook

fPath = "\\WhateverDirectory\"
sFound = Dir(fPath & "*231a*") '231a should be values in column B row 4 on in the TestSheet
If sFound <> "" Then
    Set WB1 = Workbooks.Open(fPath & sFound)
    WB1.Sheets("RCM").Range("D6").Copy
    BaseFile.Activate
    TestSheet.Range("C4").PasteSpecial xlPasteValues
End If
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...