• ベストアンサー

フォームボタンクリックでセル色表示

作業中中断により日付を変更したのかどのボタンまでクリックしたのかがわからなくなります。 A2セルの日付を変更したらB5セルが赤表示、ボタン1をクリックしたらC5セルが青表示、ボタン2をクリックしたらD5セルが緑表示、ボタン3をクリックしたらE5セルが黄表示等どこの作業まで実施したのかわかるようにしたいのですがVBAのコードがお解りになる方よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんにちは! 一例です。 コマンドボタンのオブジェクト名は実際のオブジェクト名にしてください。 シートモジュールで Private Sub CommandButton1_Click() Range("B5").Resize(, 4).Interior.Color = xlNone Range("C5").Interior.Color = vbBlue End Sub Private Sub CommandButton2_Click() Range("B5").Resize(, 4).Interior.Color = xlNone Range("D5").Interior.Color = vbGreen End Sub Private Sub CommandButton3_Click() Range("B5").Resize(, 4).Interior.Color = xlNone Range("E5").Interior.Color = vbYellow End Sub Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$2" Then If IsDate(Target) Then Range("B5").Resize(, 4).Interior.Color = xlNone Range("B5").Interior.Color = vbRed End If End If End Sub ではどうでしょうか? >どこの作業まで実施したのかわかるようにしたいのですが・・・ とありますので、 もしかしてすでに色がついているセルの色はそのまま残しておきたい場合は 各コマンドボタンのコード内の >Range("B5").Resize(, 4).Interior.Color = xlNone の1行を削除してください。m(_ _)m

kuma0220
質問者

お礼

ありがとうございます。大変助かりました。

関連するQ&A

  • フォームボタン値をセルに連続入力

    フォームボタンの値をクリックするたびにExcelセルに連続入力又、セル範囲を左クリックで示した後、ボタンクリックで範囲内に値が入力したいのですがVBAコードなどどなたか解る方よろしくお願いします。

  • ボタンをクリックすると、隣の画像の内容とリンクが切り替わる

    未熟者のため、皆様にご質問させていただきます。 onmouseoverにて変化するボタンが5つ、その隣には写真が掲載されている、といった、なんの変哲もないページがあります。 このボタンを仮に「赤」「青」「黄」「緑」「茶」とさせていただきます。 「赤」のボタンを押すと、隣の写真が予め用意していた「赤い写真」に、「青」のボタンを押すと、写真は「青い写真」に…といった具合に切り替わります。 ここまでは問題ないのですが、その隣の写真には、それぞれの色に関連する別ページへのリンクを設定したいのです。 「赤」のボタンをクリックして現れた「赤い写真」をクリックすると、「赤いページ」へ移動する。 「青」のボタンをクリックして現れた「青い写真」をクリックすると、「青いページ」へ移動する。 …といった具合です。 getElementById…などの表記を色々試してみましたが、なかなか思うように動作してくれません。 作業するソフトはDreamweaverCS4、掲載されているページはXHTML1.0です。 このような情報だけで、アドバイスいただくことは可能でしょうか…よろしくお願いいたします。

  • 違うデータのみ表示

    違うデータのみ表示したいです。 A B 1  赤 2  青 3  青 4  黄 5  赤 6  緑 7  青 8  赤 のようなとき B列に重複するデータは表示しないように 赤 青 黄 緑 の4種類だけ表示したいです。 教えてください。

  • EXCELの塗りつぶしのボタンを複数セット出来るのでしょうか?

    エクセルでセルの塗りつぶしをするボタンは通常1つ表示されていますが、このボタンを3個セットすることって出来るのでしょうか? 具体的に言うと、1つは赤、2つ目は青、3つ目は黄色です。 宜しくお願いいたします。

  • エクセル クリックでセルの色を変えるには?(3)

    15人をA、B、C、D、Eの5チームに分ける表をエクセルでつくりたいと考えています。    (1)1行目に1人目のデータ。A1列に氏名。  (2)1人目がAチームなら、B1をクリックすると赤に変わり、かつ「A」とそのセルに表示。  (3)Bチームに変更したければ、C1をクリックすると青に変わり、かつ「B」とそのセルに表示。その際、B1の色を消す。  (4)Cチームの場合は、D1をクリック、黄色に変わり、かつ「C」と表示。その際、B1もしくはC1の色を消す。  (5)Dチームの場合はオレンジ、Eチームの場合は緑、でそれぞれ同様にE1、F1に「D」「E」と表示。  (6)2人目以降は同様に、2行目以降に表示。それぞれの行が干渉しないようにする。    以上が1試合目で、2試合目、3試合目も行う。  ただし、2試合目以降は、3チームに分ける。  (1)2試合目はG、H、Iのセル、3試合目はJ、K、Lセルを使う。  (2)2試合目、3試合目のチーム名はA、B、Cではなく、ア、イ、ウとする。(2試合目、3試合目共にア、イ、ウ)  (3)1試合目はそのままで、2試合目、3試合目は別の色に変える。(Aチームは薄い赤、Bチームは薄い青、Cチームは薄い黄色)→細かな色の違いにはこだわりません。  (4)4試合目以降は行わない。    文章だけでは、表現力不足が大きく、非常にわかりにくいと思いますが、どうぞよろしくお願いいたします。  何度も同じような質問を重ねています。大変申し訳ありません。

  • エクセルVBAでボタンをクリックする度に・・・・

    はじめまして。 VBA初心者です。 ボタンをクリックする度にセルの範囲(A1:B40)を赤・白・赤・白 ・・・・と交互に色を付けるにはどのようにしたらよいでしょうか? いまいちよくわかりません。 どなかたご教授くだされば助かります。

  • VBA 時間の表示の判定

    VBAで時間の判定をしたい場合 どのようなコードを書けばよいでしょうか? 条件書式や、書式設定などの方法はたくさん載っていますが VBAで行いたいです。 具体的はA1からJ1セルにh:mmのフォーマットで時間が表示されています。 マクロを実行すると、A1からJ1の範囲内で マイナス表示のセルは赤で塗りつぶし 0:15以内なら黄色で塗りつぶし 0:15以上なら青で塗りつぶしを行いたいです。 よろしくお願いします。

  • 特定のセルをクリックしたらフォームを出現させたい

    いつも回答して頂き、ありがとうございます。 特定のセルをクリックしたら、フォームが現れて、その特定セルを基準にして、フォームに入力された内容を各セルに記載していきたいと思っています。 この特定セルは、列は変わりませんが、行は変わります。 御教授の程宜しくお願い致します。 特定セルは黄色のセルです。赤枠で囲まれた部分が一つのフォーマットです。 下記が現状のフォームを出す記述です。 Sub 作業内容設定フォームの表示() 作業内容設定.Show End Sub

  • エクセルシートに日付、曜日、時間を表示させたい。

    セルA1に日付、B1に曜日、C1にある時の時間を表示します。 ・ ・ セルA3に日付、B3に曜日、C3にある時の時間を表示します。 これまで手作業です。これをマクロで、ボタンのクリックで出来るようにしたいのです。 そしてn行のどこかのセルをアクティブにして、ボタンをクリックすると、 セルAnに日付、Bnに曜日、Cnにその瞬間の日時・曜日・時間が表示されるような、マクロとボタンを作りたいのですが、 最近VBAから遠ざかっており、思い出せません。 教えてください。出来れば、マクロをお願いします。

  • エクセルでセルの塗りつぶし

    お世話になります。セルの塗りつぶしに関して教えてください。 セルC11の色を、セルA3に1を入れると黄色に、2を入れると緑に、3を入れると赤に、さらにA4に1を入れると黄色に、2を入れると緑に、3を入れると赤に、さらにA5に1を入れると黄色に、2を入れると緑に、3を入れると赤に、塗りつぶしたいのですが、どうすればよいでしょう。 セルA3とA4とA5には同じ数字は入らないのと、何も入っていない時は塗りつぶし無しにしたいのです。 宜しくお願いします。

専門家に質問してみよう