[[20070220110815]] 『コメントの条件付書式』(Rica) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『コメントの条件付書式』(Rica)
 こんにちは。また、教えて下さい。 
 コメントをコメントのあるセル以外のセル内の条件で表示・非表示を
 コントロールすることはできますか?
 方法はコメントに限定していなくて、例えば
 C4に式があって5以上になったら、A3に「名前を記入して下さい」
 B3に「生年月日を記入下さい」という表示が出るようにしたいのですが・・・

 A3 =IF($C$4>=5,"名前を記入して下さい","")
                         (oni)

 oniさん、ゴメンナサイ。日本語が間違っていました。
 A3のコメント文が「(A3に)名前を記入して下さい」と表示され
 C4が5以上の時はA3に名前を記入、そうでない時は記入不要
 (コメントがでない)がわかるようにしたいのです。(Rica)


 A3を選択してデータ>入力規則 で
入力時メッセージで
タイトル 「名前入力」とでもして
メッセージ 「C4が5以上なら氏名を入力して下さい」とし
設定で
入力値の種類 > ユーザー設定
数式     > =C4>=5
として空白を無視するのチェックをはずす
とすると A3を選択時に 「C4が5以上なら氏名を入力して下さい」 とメッセージが出ます。
C4が4以下なら入力できなくなるのですが
このような方法はではだめですか?
                        (oni)

 oniさん ありがとうございます。
 残念ながら、意図するものとは異なります。
 ある条件(C4が5以上の時)になったら、突然
 「ここ(A3)にも名前を書いてね」という
 メッセージが現れるというイメージです。
 なので、A3をクリックしなくてもそのメッセージが出たり
 出なかったり・・・という感じです。
 マクロでエラーメッセージのような「○○BOX」を表示させるのが
 良いのでしょうか?ただ、表示させたいメッセージが何種類かあるので
 コメントのようなものをペタペタと貼り付けたかったのですが。(Rica)


 >表示させたいメッセージが何種類かあるので
 >マクロでエラーメッセージのような「○○BOX」を表示させるのが良いのでしょうか

 表示させたいメッセージがいくつかあるのであれば、マクロがよいと思います。

  If Sheets("Sheet1").Cells(4, 3) >= 5 Then
       MsgBox ("A3に名前を入力してください")
    Else
    End If
  If Sheets("Sheet1").Cells(4, 3) = 4 Then
     MsgBox ("A3に○○してください")
  Else
  End If

 というような感じでしょうか。
 (マクロ初心者)


 Ricaさん

 その条件とはどんなもので、それらに対応するメッセージはどのようなものですか?
 それがわからないと、堂々巡りですよ?
 (seiya)

 オオッ seiya さんが来て下さいましたね
私にはラッキー♪
seiyaさん
 >C4に式があって5以上になったら
 >A3に「名前を記入して下さい」とコメントを表示する
と言う条件だと、どんなマクロになりますか?
チャレンジ中ですが、チョット挫折したので
教えて下さい。
                 (oni)編集しました。16:45


 oniさん

 こんなかんじでしょうか...

 Private Sub worksheet_Calculate()
 If Range("C4").Value >= 5 Then
      MsgBox "A3に名前を記入してください"
      Me.Activate
      Range("A3").Activate
 End If
 End Sub
 (seiya)

 seiya さん 有難うございました。
マクロは記録ぐらいしかわからないので
難しく考えすぎていたようです。
Ricaさんスレを勝手にお借りしてスミマセンでした。
                        (oni)


 マクロ初心者さん、seiyaさん、oniさん、いつもいつもありがとうございます。

 >その条件とはどんなもので、それらに対応するメッセージはどのようなものですか?
 演算式です。複数のシートから値を参照する長い式なので省略しますが、C4のセルに
 入れています。
 「条件付き書式」を使って、C4の値が5以上になるとA3のセルの色が赤に変わるというのは
 できました。このA3のセルの色変更の代わりに、コメント(A2に名前を記入して下さい)
 が表示される。ということをしたいのです。
 同様に、C5にも別の独立した式が入っていて10以下なら、コメント(B3に生年月日を
 記入下さい)が表示される。という2つのパターンがあります。
  seiyaさんのマクロを参考に作ってみます。皆様、本当にありがとうございます。
 
  ただ
 Me.Activate
  Range("A3").Activate の意味がわかりません。(Rica)

 私が書いたコードは Sheet モジュールに貼り付けて
 シートが再計算されたときに作動します。
 Me はそのコードが書かれたモジュールのObjectですので
 たとえば、Sheet1にかかれたものなら Sheets("Sheet1")
 ということになります。
 Range("a3").Activateは Sheets("Sheet1").Range("A3").Activate
 のことですが、わかりませんか?
 (seiya)

 seiyaさん 理解できました。
 ありがとうございました。自分でこれからやってみます。(Rica)

 飛び入り参加w
 再計算されるたびにメッセージボックスが出てしまいませんか?
 A3、B3の空白判定を入れるとかかしら?
 (ROUGE)

 If clause で判定していますが?
 それに、どのような名前が入力されなくてはいけないのか
 わかりませんよね?
 (seiya)

 いや、他のセルに計算式が入っていたとして、そこが変更になった場合を想定していましたので。
 名前判定はそのとおりですね。
 空白かそうでないかの処理かなぁ、と思った次第です。
 (ROUGE)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.