Excel VBA自动填充只返回公式
Posted
技术标签:
【中文标题】Excel VBA自动填充只返回公式【英文标题】:Excel VBA autofill just return the formula 【发布时间】:2013-03-21 00:43:06 【问题描述】:我创建了一个宏并将其放入personal.xls 文件中。 该宏假设自动填充 PhanCong.xls 中 J 列的 vlookup,但它只返回确切的公式。 这是我的 Excel 文件的一部分,用于说明我所说的内容。
第一列应该有 vlookup 值,而不是这样的公式。 这是我的宏,自动填充数据的部分。
"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
【问题讨论】:
目标列的Format
是什么?
我已经用这个 Columns("A:A").NumberFormat = "@"
我尝试将其格式化为文本,所以如果该行错误,请纠正我。
试试General
。 Text
将所有内容都视为文本,不会对其进行评估。
omg,如此简单的解决方案。谢谢你的帮助。由于它只是一个评论,所以我只能投票给你的评论。
【参考方案1】:
单元格格式Text
将单元格的值视为文本。它不会评估任何公式。如果您希望对其进行评估,我认为您必须使用General
。 (不是 100% 确定的)
如果您需要将结果格式化为文本,我相信您可以这样做。
=TEXT(VLOOKUP(RC[9],'[PhanCong.xls]Bang ma CC'!C1:C7,7,FALSE))
试一试,不行,没用!
【讨论】:
以上是关于Excel VBA自动填充只返回公式的主要内容,如果未能解决你的问题,请参考以下文章
Excel vba将公式从一列自动填充到Excel中的最后一列
Excel VBA:自动填充公式的代码,无论左侧列的长度是多少(因此不需要指定范围)