|
▼初心者A さん:
う・・・ん・・・
データ、なにも A1 をさんしょうしなくても、じどうはんていはできるんですが
まぁ、A1 がデータ数だとしましょう。
>▼β さん:
>>▼初心者A さん:
う〜ん・・・・
データ件数は 何も A1 を参照しなくても自動把握は可能ですが、
まぁ、A1 がデータ件数だとしましょう。
質問しているのは、
アップしたコードを実行して、どんな不具合があったのですか
ということです。
まぁ、ループの最初で実行時エラーになったんだと思いますが。
マクロ内で、セルに数式を入れる場合、その数式は、セルに入力するまんまの文字列を
" で囲んで指定します。
セットすべき数式は、たとえば =SUM(C1:G1) という文字列ですよね。
"=SUM(Cells(" & i + 2 & ",1):Cells(" & i + 2 & ",7))"
これでは、たとえば
=SUM(Cells(3,1):Cells(3,7))
こんな数式文字列になります。なので、エクセルは、こんな名前、知らないよ!
ということで #NAME? と表示してますよね。
このエラー値になっているセルのValue を参照しようとすると実行時エラーになります。
もし数式を入れるなら
Cells(i, 2).Formula = "=SUM(C" & i & ":G" & i & ")"
ですね。
数式を入れず、VBA内でワークシート関数のSUMを使って合計した値をB列にセットすることも
もちろんできますが。
しかし、比べる数字が、6 になったり 8 になったりするのでしょ?
そのたびにマクロを修正するのですか?
コメントしたように、データ件数は自動で把握できますので、むしろ A1 には
比べる数字をいれ、それを使ったほうがよろしいのでは?
|
|