在vba中转换公式

问题描述 投票:0回答:1

请帮我采用以下公式来vba格式:

=MID(A2,FIND(CHAR(64),A2)+1,LEN(A2))

=IF(ISNUMBER(MATCH(B2,MTLS!B:B,0))=TRUE,"MTLS","NOT MTLS")

我的方法只适用于第一个公式:

With WS1.Range("AP2:AP" & LastRow)
    .Formula = "=MID(T2,FIND(CHAR(64),T2)+1,LEN(T2))"
        End With

第二个给出“语法错误”。

            With WS1.Range("AP2:AP" & LastRow)
               .Formula = "=IF(ISNUMBER(MATCH(B2,MTLS!B:B,0))=TRUE,"MTLS","NOT MTLS")"
                  End With
excel vba excel-vba excel-formula
1个回答
0
投票

转到VBEditor,显示立即窗口(如果您还没有看到,则按Ctrl + G)。在电子表格中选择带公式的单元格。输入立即:

?Selection.formula

你明白了如果你想在代码中使用它,你需要加倍“s。或者你可以立即输入:

?Replace(cl.Formula, """", """""")

您将获得带有双引号的公式。

© www.soinside.com 2019 - 2024. All rights reserved.