|
少し考え違いしているようですね。
あなたのことを考えて、できているところまで示してみては、
とおっしゃっていると思います。
マナさんはいつも丁寧な回答をされているかたです。
提示されたコード(一部分であっても)を出発点に、
(下記のような曖昧な点を)明確にしながら
コードを検討していこうということだったと思います。
それなのに、「条件が合わなければスルーして」というのはなんと無粋な。失礼な。
そういう対応だと、回答者は誰もスルーしちゃいますよ。
ご自分の不明点を明確にすれば、
ご自分のテーマが明確になります。
そして、回答者もそこを中心に丁寧な助言ができます。
私は何度もマナさんがそういう助言をするスレッドを目撃してきました。
今回のは残念な対応でしたし、何よりも、
ご自分の勉強の機会を逸してしまって、
あなたにとって残念な話です。
-----------------
完全なコードがポンと出てくるわけがないですよ。
以下のような点が明確になっていませんよね。
大切なのは、結果のコードではなく、
どのような考え方でそれを作成していくか、と言う点です。
仕様を確認しながら、検討していく
そういう経験そのものが必要なことなんです。
不明点の例:
・対象範囲は今日だけの列か、全体か。
今日の列なら、それはどうやって判断するか(データの日付はどこにあるのか)
・それともActiveCellのある列を対象とするのか。
・「測定基準範囲も異なります。」が具体性に欠ける。
機種毎項目毎の基準範囲はシートのどこかに記載があるのか。
・範囲外箇所が複数あった場合、警告は連続して出す必要があるのか。
仕様が曖昧だから、今できる回答は例えば、以下のようなことでしかないでしょう。(例えばの、疑似コードです)
If セルの値 < 下限 Or セルの値 > 上限 Then
セルに色をつける
End If
といった処理を、対象範囲内で繰り返せばよい。
というものでしかないでしょう。
・色をつける部分は、マクロ記録をとれば参考コードがわかります。
・繰り返し部分は、例えば、こんなコード片が参考になるはず。
For j = 1 To 37
For k = 1 To 7
Debug.Print k + 2 + (j - 1) * 9
Next
Next
---------------
なお、そもそもを言えば、まとめて処理するよりも
入力の都度、着色による警告があったほうが便利なはずです。
入力のための情報をもう一度探す手間をかけず、
その時点で確認ができるはずだからです。
また、入力規則の利用も検討に値するでしょう。
回答者の助言は、素直に聞き入れた方がお得です。
あなたの質問回数の何百倍、何千倍もの回答をしてきています。
|
|