У меня есть электронная таблица с Листом 1 и Листом 2. Лист 2 содержит данные, извлекаемые из базы данных Access с помощью макроса. Существует номер учетной записи (например: 12345) и имя учетной записи, соответствующее этому номеру (например: учетная запись A).
На Листе 1 я использую VLookup в поле Имя учетной записи, чтобы посмотреть номер счета в столбце А, используйте это значение для поиска номера счета на Листе 2 и извлеките соответствующее Имя учетной записи из Листа 2.
Я получаю ошибку # N / A. Я полагаю, что проблема связана с тем фактом, что номер счета в листе 2 указывается как «номер как текст». Однако учетная запись на листе 1 является текстовой.
Я попытался изменить учетную запись на Листе 2 на текстовую, но она все равно не будет работать. Я также попытался написать макрос для форматирования краски с листа 1 на лист 2, чтобы счета в буквальном смысле совпадали.
Если дважды щелкнуть номер учетной записи на листе 2 и нажать клавишу ввода, имя листа будет перетащено на лист 1. Поэтому я попытался написать макрос, чтобы установить значение учетной записи, равное самому себе, как и для некоторых другие поля, но это тоже не сработает.
Кто-нибудь сталкивался с подобной проблемой раньше? Как я могу заставить vlookup распознавать учетные записи на листе 2?
Вот vlookup, который я использую на Листе 1:
= IFERROR (ВПР (A15, Ledger A: B, 2, FALSE), "")
Sub DATA_RECORDSET_OPEN()
Application.StatusBar = "OPENING RECORDSET - PLEASE WAIT"
With rstQuery
.ActiveConnection = cn
.Source = sqlSelect
.LockType = adLockOptimistic
.CursorType = adOpenStatic
.CursorLocation = adUseServer
.Open
End With
Application.StatusBar = False
End Sub
Sub DATA_IMPORT_RECORDS()
'This section counts the number of rows with data in column "A" and then pastes the information from the query on the first empty row.
Application.StatusBar = "IMPORTING NEW ROWS OF DATA - PLEASE WAIT"
intRows = Application.CountA(ActiveSheet.Columns("A:A"))
ActiveSheet.Range("A" & intRows + 1).CopyFromRecordset rstQuery
Application.StatusBar = False
End Sub
'Format painter from Sheet 1 to Sheet 2
Sheets("Sheet 1").Range("A15").Copy
Sheets("Sheet 2").Range("A2:A500").Select
Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
'Fixes Sheet 2 total formulas by correcting Sheet 2 tab cells
intCount = Application.CountA(Sheets("Sheet 2").Range("A:A"))
Do Until intCount = 1
Range("A" & intCount).Select
ActiveCell.FormulaR1C1 = Range("A" & intCount).Value
Range("B" & intCount).Select
ActiveCell.FormulaR1C1 = Range("B" & intCount).Value
Range("C" & intCount).Select
ActiveCell.FormulaR1C1 = Range("C" & intCount).Value
Range("D" & intCount).Select
ActiveCell.FormulaR1C1 = Range("D" & intCount).Value
Range("E" & intCount).Select
ActiveCell.FormulaR1C1 = Range("E" & intCount).Value
intCount = intCount - 1
Loop