重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

電子書籍の厳選無料作品が豊富!

Excel2003を使用しています。

数式を入力している列で、端数処理をするために、元々入力されている数式に手を加えることがあるのですが、内容を変更をしたセルがわかるように、数式を変更したら、自動でセルに色がつくように設定することはできますか?

セルに色をつけるということではなくても、フォントの色を変えるとか、変更したセルがひと目でわかるようにしたいのですが。。。
よろしくお願いします。

A 回答 (2件)

「数式が入ったセルが修正されたら色を着ける」ということなら、シート名を右クリック→「コードを表示」で開く画面に以下のマクロを貼り付ければ実現できます



Private Sub Worksheet_Change(ByVal Target As Range)
If Target.HasFormula Then
Target.Interior.ColorIndex = 28
End If
End Sub

ただしこれではセルをダブルクリックして何も修正せずに確定した場合も色が変わります。その点はご承知おきください
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
今回の場合は、端数処理の必要がなければ、数式が入力されている列を操作することはないので、教えていただいたマクロで十分です。
ありがとうございました。

お礼日時:2007/01/25 09:22

VBAでシートのセルのChangeイベントというものが有るが、変更前の情報は取れないので、ましてセルの式に限ってなどは、採るのは無理と思います。

HasFormulaなども、今現にあるかどうかを判別するもので、
無しー>あり
ありー>あり(変更)
ありー>なし
(なしー>無しは捉える必要はないが)
にの別は割り出せないと思う。
もっと勉強して、ApIなどの学が進んだら、できないか考えてみることです。初心者がイメージすることのほとんどは、エクセルで、できないと思っても良いと思います。エクセルを使い込んだ人はあきらめているのでしょう。
セルがHasFormulaなら、でよいのなら、数行のユーザー関数を組んで、条件付き書式の、「式が」の中でそれを使えるので、式のあるセルを色付けすることは可能。
標準モジュールに
Function hsfml(a)
If a.HasFormula Then
hsfml = 1
Else
hsfml = 0
End If
End Function
を貼り付け。
書式を設定する、セル範囲を指定
書式
条件付き書式
数式が
=hsfml(A1)=1
書式でセルの色を設定
OK
式のあるセルが、色が変わります。
=2などを入れて2にしても変わります。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

>もっと勉強して、ApIなどの学が進んだら、できないか考えてみることです。初心者がイメージすることのほとんどは、エクセルで、できないと思っても良いと思います。

今まで、こちらでExcelに関する質問を何度もさせていただいていますが、親切な回答者様もいらっしゃって、問題解決までお付き合いくださいますので、私の場合、どれも希望通りの解決に至っているせいか、初心者がイメージすることのほとんどは、エクセルでできないとはあまり感じていません。

お礼日時:2007/01/25 10:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!