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 = "@" 我尝试将其格式化为文本,所以如果该行错误,请纠正我。 试试GeneralText 将所有内容都视为文本,不会对其进行评估。 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:自动填充公式的代码,无论左侧列的长度是多少(因此不需要指定范围)

自动填充 Application.Countifs.Formula VBA Excel

Excel VBA自动填充未填充第一行和第一列

如何自动填充公式 VBA

Excel vba 仅自动填充空单元格