2013-03-21 4 views
0

Я создал макрос и поместил его в файл personal.xls. Макрос предположил автозаполнение vlookup столбца J в PhanCong.xls, но он просто возвращает именно формулу. Вот часть моего файла Excel, чтобы проиллюстрировать, что я говорю.Excel VBA autofill просто возвращает формулу

enter image description here

Первый столбец должен иметь значение ВПР, а не формулу подобное. Вот мой макрос, часть, которая выполняет автозаполнение данных.

 "C:\Users\khoale\Desktop\PhanCong.xls" 
Windows("test.xlsx").Activate 
ActiveSheet.Cells(2, 1).Activate 
ActiveCell.FormulaR1C1 = _ 
    "=VLOOKUP(RC[9],'[PhanCong.xls]Bang ma CC'!C1:C7,7,FALSE)" 
Dim autoFillRow As Long 
With ActiveSheet 
autoFillRow = .Range("C" & Rows.Count).End(xlUp).Row 
End With 
Range("A2").Select 
Selection.AutoFill Destination:=Range("A2:A" & autoFillRow), Type:=xlFillDefault 
+0

Что такое «Формат» столбца назначения? – NickSlash

+0

Я отформатировал его с помощью этих столбцов («A: A»). NumberFormat = «@» –

+0

Я пытался отформатировать его как текст, поэтому, если эта строка неверна, пожалуйста, исправьте меня. –

ответ

1

Формат ячейки Text рассматривает значение ячейки как текст. Он не будет оценивать какие-либо формулы. Если вы хотите, чтобы это оценили, я думаю, вам нужно использовать General. (не на 100%)

Если вам нужно отформатировать результат как текст, я верю, что вы можете это сделать.

=TEXT(VLOOKUP(RC[9],'[PhanCong.xls]Bang ma CC'!C1:C7,7,FALSE))

Просто дал ему идти, и нет, это не поможет!