
Я хочу получить один столбец значений из другой рабочей книги и заполнить вкладку в моей текущей рабочей книге. В конечном итоге это войдет в гораздо более длинный модуль, который я написал и который отлично работает. Я просто хотел автоматизировать этот шаг. Ниже приведен код.
Я получаюиндекс вне диапазонаошибка в строке вставки. Кажется, что моя настройка оператора currentWb
не ThisWorkbook
работает, потому что вторая копируемая рабочая книга все еще открыта, диапазон выбран и скопирован и просто ждет назначения для вставки. Я искал и пробовал все, что мог придумать.
Sub OpenWorkbookToPullData()
Dim sUserInput As String
sUserInput = InputBox("Enter Account Folder Name:", "Folder Name")
Dim path As String
path = "C:\users\" & Environ$("username") & "\OneDrive\Documents\Brightree\" & sUserInput & "\Financial Scorecard\Exceptions.xlsm"
Dim currentWb As Workbook
Set currentWb = ThisWorkbook
Dim exceptionWb As Workbook
Set exceptionWb = Workbooks.Open(path)
Dim exceptionWs As Worksheet
Set exceptionWs = exceptionWb.Sheets("Exceptions")
Dim rng_data As Range
Set rng_data = exceptionWs.Range("A1:A20")
rng_data.Copy
currentWb.Sheets("Exception").Range("A1").PasteSpecial xlPasteValues
exceptionWb.Close (False)
End Sub
решение1
Вы должны убедиться, чтоЛисты("Исключения")существует вобарабочие тетради.
И какИзвилистыйотмечает; проверьте правильность написания названий рабочих листов.