宏中的计数

Countifs in Macros

我正在尝试更新需要验证两个条件而不是一个的旧宏。

这是当前代码:

Columns("G:G").Select
TempString = "IF(RC[4]>0,""1,"","""")&IF(RC[7]>0,""2,"","""")&IF(RC[10]>0,""3,"","""")&IF(RC[13]>0,""4,"","""")"
Selection.FormulaR1C1 = "=IF(LEN(" + TempString + ") > 0, LEFT( " + TempString + ", LEN( " + TempString + " ) - 1 ), " + TempString + " )"
Columns("G:G").EntireColumn.AutoFit
Range("G1").Select
ActiveCell.FormulaR1C1 = "Map"

这是我正在尝试使用的代码。我希望它验证两个条件,而不是现在的当前条件。它应该验证列名,以及右侧四个紧邻空格的单元格(如果单元格中的数字大于 0,则为真):

Columns("G:G").Select
TempString = "IF(COUNTIFS(R[-1]C[4],"*MAP*", RC[4], ">0"),""1,"","""")&IF(COUNTIFS(R[-1]C[7],"*MAP*", RC[7], ">0"),""1,"","""")"
Selection.FormulaR1C1 = "=IF(LEN(" + TempString + ") > 0, LEFT( " + TempString + ", LEN( " + TempString + " ) - 1 ), " + TempString + " )"
Columns("G:G").EntireColumn.AutoFit
Range("G1").Select
ActiveCell.FormulaR1C1 = "Map"

当我尝试使用更新后的代码时,我收到“预期:语句结束”。我知道这是因为逗号,但我不知道将其放入宏中。任何帮助,将不胜感激。谢谢。


TempString = "IF(COUNTIFS(R[-1]C[4],""*MAP*"", RC[4], "">0""),""1,"","""")&" & _
              "IF(COUNTIFS(R[-1]C[7],""*MAP*"", RC[7], "">0""),""1,"","""")"

With Columns("G:G")
    .FormulaR1C1 = Replace("=IF(LEN(<ts>)>0, LEFT(<ts>, LEN(<ts>)-1),<ts>)", _
                           "<ts>", TempString)
    .EntireColumn.AutoFit
End With
Range("G1").Value = "Map"