У меня есть 2 листа Excel с почти той же информацией.Сравните столбец в 2 файлах excel в VBA
первый лист выглядит следующим образом:
ID Name empnumber
1 abc 123
2 xyz 234
второй лист выглядит следующим образом:
ID Name empnumber
1 abc 234
2 xyz 345
Мой первый лист содержит временный номер Employee и второй лист содержит конечное число сотрудников.
Я пытаюсь создать макрос, который будет обновлять мой первый столбец столбца-столбца в зависимости от моего второго листа путем сопоставления значения имени или идентификатора.
Я возьму 1-й и 2-й файлы Excel в качестве пользовательского ввода. также сравнивая столбец (имя/идентификатор) в поле ввода, чтобы пользователь решал, что нужно сопоставить.
Псевдо-код:
if abc from 1st sheet==abc from 2nd sheet
then
emp number of abc in 1st sheet = empnumber of abc from 2nd sheet.
Как сделать это в VBA?
Вот идет мой код:
Dim FileNameA As String
Dim FileNameB As String
Dim varSheetA As Variant
Dim varSheetB As Variant
Dim strRangeToCheck As String
Dim iRow As Long
Dim iCol As Long
strRangeToCheck = "A1:B5"
iRet = MsgBox("Select forecast file", vbYes, "Forecast file")
FileNameA = Application.GetOpenFilename()
If FileNameA = "False" Then Exit Sub
Set wbkA = Workbooks.Open(Filename:=FileNameA)
Set sh1 = wbkA.Sheets("Sheet1")
varSheetA = wbkA.Worksheets("Sheet1").Range(strRangeToCheck)
iRet = MsgBox("Select Actual file", vbYes, "Actual file")
FileNameB = Application.GetOpenFilename()
If FileNameB = "False" Then Exit Sub
Set wbkB = Workbooks.Open(Filename:=FileNameB)
Set sh2 = wbkB.Sheets("Sheet1")
varSheetB = wbkB.Worksheets("Sheet1").Range(strRangeToCheck)
strcompareColumn = InputBox("Please enter column name to compare", "Data Entry")
strUpdateColumn = InputBox("Please enter column name to update", "Data Entry")
End Sub
Теперь мне нужно найти точную строку/столбец из 1-го листа, принимает значение из второго листа и обновление 1-го листа.
@ Jean-FrançoisCorbett: отредактировал мой вопрос и добавил код. Пожалуйста, помогите .. – Prajakta
Вы можете легко решить это с помощью 'VLOOKUP'? – CustomX
@ t.thielemans: Я не хочу использовать формулу. Мне нужно использовать макрос, так как есть много других вещей, которые мне нужно включить в код. – Prajakta