1

VBA を使用して Excel に数式を挿入しようとしていますが、うまくいきません。実行時エラー 1004 が返されます。ここでいくつかのトリックまたは回答を試しましたが、私の場合にはあまり関係がないようです。

コードは次のとおりです。

ActiveCell.Formula = "=COUNTIFS('DataSheet_B'!$C$4:$C$13268;B6;'DataSheet_B'!$M$4:$M$13268;A6;'DataSheet_B'!$J$4:$J$13268;$G$5)"

2 番目のステップでは、動的に変化する変数に置き換えようとして13268います。$C$13268数式に挿入するだけです。これが、数式をハードコーディングしようとしている主な理由です。

または、次の式を使用しています。

Dim sVal As String
    sVal = "13268"

ActiveCell.FormulaR1C1 = "=COUNTIFS(DataSheet_B!R4C3:R[" & sVal & "]C3,RC[-5],DataSheet_B!R4C13:R[" & sVal & " ]C13,RC[-6],DataSheet_B!R4C10:R[" & sVal & " ]C10,R5C7)"

ただし、2 番目のドル記号は返されません。$C$13268

ありがとうございました

4

1 に答える 1

0

; すべてのセミコロン, カンマに置き換えて開始します

ActiveCell.Formula = "=COUNTIFS('DataSheet_B'!$C$4:$C$13268,B6,'DataSheet_B'!$M$4:$M$13268,A6,'DataSh‌​eet_B'!$J$4:$J$13268,$G$5)"

文字列内で変数を使用したい場合

Dim sVal As Long
    sVal = 13268

ActiveCell.Formula = "=COUNTIFS('DataSheet_B'!$C$4:$C$" & sVal & ";B6;'DataSheet_B'!$M$4:$M$" & sVal & ";A6;'DataSheet_B'!$J$4:$J$" & sVal & ";$G$5)"
于 2013-07-18T08:56:12.193 に答える