|
横から失礼いたします。
私もつい先日、似たようなことでひっかかってしまったので、
この内容にはちょっと興味があります。
>>With ActiveCell.Resize(5)
>↓の部分をコメントにして
>>' If .Value = 1 Then ← エラー
>>' .Offset(0, 1).Value = 99
>>' End If
> .Select
> にしてみればどういうことをやろうとしているのか解ると思いますが
>>End With
>
>Msgbox Range("A1:A5").value
>と同じ事ですね。
私なりに考えてみたのですが、この場合、Resizeが問題というわけではなく、
Jakaさんがおっしゃるところの、
Msgbox Range("A1:A5").Value
…これは、配列で各値を取り込んでいるわけではないので、
複数のセルの値を一度に出力できないという解釈でいいのでしょうか?
また、If ActiveCell.Resize(5).Value = 1 Then ... も、同じことかとは思いますが、
特にこの場合、5つのセルの値が1…
これは5つ全てのセルの値が1なのか、5つのうちどれかひとつでも1があればいいのか、
それとも、ひょっとして5つ合計した値が1なのか!?
などなど、人によってもその解釈が分かれそうなものをExcelは認識できないよ…
…と、噛み砕いて解釈してしまったのですが、これは間違った解釈でしょうか?
もし間違った解釈をしているのであれば、
今のうちにその勝手な思い込みを払拭したいと考えております。
ぜひアドバイスをいただければ幸いです。
|
|