【问题标题】:How to call Excel formula using VBA如何使用VBA调用Excel公式
【发布时间】:2023-01-16 19:10:15
【问题描述】:

我正在使用下面提到的公式从单元格中过滤掉不需要的文本。我想通过 VBA 使用这个公式,我尝试了一些方法,包括 Sub Formula_Property 和 Recording Macro 但没有成功。

公式如下:

=LEFT(A3,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A3 & "1234567890"))-1)

主要数据在 Sheet1 ColumnA2:A5000 中可用,我想在 Sheet3 B2:B5000 列中过滤文本(结果)。

无论如何我可以使用 VBA 自动执行此操作,这对我很有帮助。

谢谢

【问题讨论】:

    标签: excel vba automation


    【解决方案1】:

    该宏将将该公式应用于您希望的范围。

    Sub Filter_Text_Formula()
    Sheets("Sheet3").Range("B2:B5000").FormulaR1C1 = "=LEFT(Sheet1!RC[-1],MIN(FIND({1,2,3,4,5,6,7,8,9,0},Sheet1!RC[-1] & "1234567890"))-1)"
    End Sub
    

    【讨论】:

    • 亲爱的@Spencer Barnes 它给出了错误“编译错误”预期语句结束,这突出显示了公式 1234567890 中的这些数字
    • 您可能需要转义这些引号。
    • 对,结尾应该是& ""1234567890""))-1)"
    猜你喜欢
    • 2015-07-23
    • 2017-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多