Я пытаюсь получить значение ячейки из другой книги без открытия исходного файла. При использовании фактического адреса ячейки ниже будет возвращено значение из «SourceRange». Однако я хочу изменить приведенный ниже код, чтобы ссылаться на имя ячейки вместо адреса ячейки, поскольку строки могут быть добавлены. Итак, если имя ячейки в исходной книге называется «Всего», есть ли способ получить значение?Значение возвращаемой ячейки VBA из именованной ячейки в закрытой рабочей книге
Sub OpenFiles()
Dim Folder_YR As String
Dim Folder_MO As String
Dim Path As String
Dim File As String
Dim SourceSheet As String
Dim SourceRange As String
Folder_YR = Sheets("Inputs").Range("B5").Value
Folder_MO = Sheets("Inputs").Range("B9").Value
FN = Sheets("Inputs").Range("B10").Value
Path = "G:\PMT ACTIVITY\" & Folder_YR & "\" & Folder_MO & "\"
File = FN
SourceSheet = "Summary"
SourceRange = Range("C1").Address(1, 1, xlR1C1)
Ref = "'" & Path & "[" & File & "]" & SourceSheet & "'!" & SourceRange
Sheets("Model").Range("C18").Formula = ExecuteExcel4Macro(Ref)
End Sub
Пытались ли вы метод ADO? Не уверен, что это работает с именованным диапазоном ... http://stackoverflow.com/questions/16859255/reading-a-workbooks-without-opening-it-with-ado –