Это, вероятно, будет звучать запутанно, поэтому я постараюсь объяснить. Я действительно новичок в VBA, и я в порядке в Excel. Я пытаюсь сделать электронную таблицу, которая заполняет определенные значения, в другую электронную таблицу, настроенную как шаблон. Однако существует несколько различных шаблонов, которые необходимо заполнить в зависимости от найденного значения. Шаблоны являются отдельными файлами. Без возможности раздавать деловую информацию о клиенте я буду использовать пример. У меня есть шаблоны a.xls, b.xls и c .xls, в них есть 3 ячейки, которым требуется информация из таблицы настроек, ie, result1, result2, result3 из таблицы. Поэтому, если «а» найдено, тогда возьмите result1, result2 и result3, скопируйте их и вставьте в a.xls требуемые ячейки.
код, который у меня есть на данный момент, находит значения в столбце данных и просто возвращает сообщение. Я не знаю, является ли это правильным решением, и я натыкаюсь на примеры в Интернете, поэтому любая помощь будет потрясающей.
Пока это мой код.
Sub LookupTableValue()
Dim Table2 As ListObject
Dim FoundCell1, FoundCell2 As Range
Dim LookupValue1, LookupValue2 As String
LookupValue1 = "a"
LookupValue2 = "b"
Set Table2 = ActiveSheet.ListObjects("Table2")
Set FoundCell1 = Table2.DataBodyRange.Columns(1).Find(LookupValue1, LookAt:=xlWhole)
Set FoundCell2 = Table2.DataBodyRange.Columns(1).Find(LookupValue2, LookAt:=xlWhole)
If Not (FoundCell1 Is Nothing) Then
If FoundCell1.Value = LookupValue1 Then
MsgBox "Found a"
End If
End If
If Not (FoundCell2 Is Nothing) Then
If FoundCell2.Value = LookupValue2 Then
MsgBox "Found b"
End If
End If
End Sub
Итак, я думаю, что вместо строки MsgBox мне нужно открыть электронную таблицу спецификаций c xls, которая является шаблоном, а затем скопировать ячейки таблицы в этот шаблон, а затем сохранить новые .xls в другой папке.