Я использовал этот сайт и другие, чтобы запустить этот проект, но я ударил кирпичную стену. То, что я делаю, это импорт (копирование) столбцов c-h из конкретной книги (ImportConvert.xlsx) и вставка их в столбцы a-f ControlBook.xlsm. Затем я копирую строки a -c третьей книги (Clients.xlsx) и вставляю эти столбцы в столбцы m - o ControlBook.xlsm. Оба находятся на одном листе. Мне удалось зайти так далеко от учебников, которые я прочитал до сих пор, и поблагодарить всех за эту информацию. Следующее, что я собираюсь выполнить, - это поиск каждого значения в столбце B рабочего листа с каждым значением в столбце O, чтобы увидеть, содержится ли значение в столбце O внутри строкового значения в столбце B. Когда совпадение найдено, я хочу значение в столбце O для отображения в столбце g.Отображение значения из одной ячейки в столбце O на основе найденного значения Поиск InStr отдельной ячейки в столбце B
Когда я выполняю код, он обрабатывается от начала до конца, но не отображает значение в столбце g.
Вот код:
Sub StartProcess()
Dim wbk As Workbook
strDataFile = "C:\Documents and Settings\Administrator\Desktop\ImportConvert.xlsx"
strMasterFile = "C:\Documents and Settings\Administrator\Desktop\ControlBook.xlsm"
strClientFile = "C:\Documents and Settings\Administrator\Desktop\Clients.xlsx"
Set wbk = Workbooks.Open(strDataFile)
With wbk.Sheets("Data")
Range("c:h").Copy
End With
Set wbk = Workbooks.Open(strMasterFile)
With wbk.Sheets("Deposits")
Range("a:f").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End With
wbk.Save
wbk.Close
Set wbk = Workbooks.Open(strClientFile)
With wbk.Sheets("ActivePayee")
Range("a:c").Copy
End With
Set wbk = Workbooks.Open(strMasterFile)
With wbk.Sheets("Clients")
Range("m:o").PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
End With
Dim rngSub As Range
Dim rngSrch As Range
For Each rngSub In Range("o2:o1000")
For Each rngSrch In Range("b2:b1000")
If InStr(rngSrch, rngSub) > 0 Then
rngSrch.Offset(, 5) = rngSub.Value
End If
Next
Next
End Sub
Это не самое элегантное решение, но человек, которого я пытаюсь помочь нетерпелив и просто не хочет, чтобы его сейчас (не касается построен должным образом). Я вернусь после того, как он успокоится и узнает более элегантный способ создания этого проекта. Я просто хочу дать этому парню что-то, чтобы он не был настолько паническим.
Я пришел к этому с минимальным воздействием VBA, но я знаком с программированием через PhP, mySQL и т. Д. Я поработал с VBA в конце 90-х и начале 2000-х годов, но не был выставлен VBA в длинном время.
Заранее благодарим за любую помощь.