• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのマクロを使って未入力情報を知らせる方法)

エクセルのマクロで未入力情報を知らせる方法

このQ&Aのポイント
  • エクセルで未入力情報を知らせるマクロを作成する方法をご教示ください。
  • Excelのマクロを使って、未入力の情報がある場合に警告を表示する方法を教えてください。
  • エクセルのマクロで、未入力情報がある場合にメッセージボックスで警告を表示する方法を教えてください。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

>これを違うシートに貼り付けるマクロを作成している このマクロの中で、検査をさせてやればいいですね。 今のマクロの作成例: sub macro1() range("A1:B3").copy destination:=worksheets("Sheet2").range("A1") end sub そのマクロに追加する機能: A1とB1、A2とB2、A3とB3が、それぞれ「片方が記入されていて、他方が記入されていない」時に、警告を出して続行するか中断するかを求める 基本的な概念: sub macro1r1()  if application.counta(range("A1:B1"))=1 _  or application.counta(range("A2:B2"))=1 _  or application.counta(range("A3:B3"))=1 then   if msgbox("記入漏れ。続行しますか",vbokcancel) <> vbok then exit sub  end if  range("A1:B3").copy worksheets("Sheet2").range("A1") end sub 変数を使い、もっと一般化すると: sub macro2()  dim r as long  dim flg as string  for r = 1 to 3   if application.counta(cells(r, "A").resize(1, 2)) = 1 then    flg = "記入漏れ"   end if  next r  if flg = "記入漏れ" then   if msgbox("記入漏れ。続行しますか",vbokcancel) <> vbok then exit sub  end if  range("A1:B3").copy worksheets("Sheet2").range("A1") end sub #参考 >例えば「A列のセル記入数と、B列のセル記入数が違えばメッセージ」 これじゃダメですね。たとえばA列はA1に1個記入され、B列はB2に1個記入されていましたでは、通せません。

go-hey
質問者

お礼

keithinさん 早速の回答ありがとうございます!自分の拙い文章だったにも関わらず、細かにご指摘頂き感激しております。 頂いた物を、足りない頭で理解しながら入力していたら、お返事が遅くなってしまいました。大変申し訳ありません。 今後、又つまづいた際に、ご縁がありましたら何卒宜しくお願いいたします。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 【エクセル】マクロ

    すみません。 エクセルのマクロのプログラム教えてください。 セルA1~A30に 「1」~「5」のいずれかの数字が 入っています。 そのA列の数字をもとにB1~B30のセルの書式を 変えたいと思っています。 例えば、「1」なら赤色、「2」なら青色、「3」なら緑色・・・ となるように考えています。 for文で1~30まで繰り返し、if文とswitch文で実行すると 思うのですが、どのようなプログラムを書けばいいですか? よろしくお願いします。 3種類なら条件式書式が使えるのですが、4種類以上だと使えないので マクロで実行しようと思っています。

  • マクロ:範囲内のセルを1つずつ編集する

    EXCEL2003を使っています。 マクロは全くの初心者です。 VBはVB.NETを少しかじった程度です。 A1:A30に値1、B1:B30に値2が入力されています。 (1)B1の値がA1より大きい場合セルの背景色を青色に変更。 (2)B1の値がA1より小さい場合セルの背景色を赤色に変更。 (1)(2)の動作をB1からB30まで順番に行いたいのです。 条件付書式のやり方は分かります。 ですが条件付書式の場合単独のセルを指定する方法しか分かりません。 範囲内のセル全てに1つずつ条件付書式を適用するマクロを組みたいのです。 どなかた知恵を貸して下さい。 宜しくお願いします。

  • エクセルで土・日のセルに幅広く色をつけたい

    エクセルで予定表を作成しています。A列に日付・BからH列まで項目を設けています。(A列は、33行目まで日付が入力されています) A列に条件付書式で、条件付書式の設定で条件(1)数式が=WEEKDAY(A33)=1  パターン  色  ブルー  フォント  赤 A列に条件付書式で、条件付書式の設定で条件(2)数式が=WEEKDAY(A33)=7  パターン  色  グリーン フォント  赤 の設定を行いました。 A列の 土・日のフォントが赤に、セルの色がブルー・グリーンになるのですがBからH列はセルに色がつきません。 A33:H33  までの設定にするとセルの色がグレーになります。 AからHまでセルに同じ色を表示する設定はあるのでしょうか。

  • エクセルマクロで空白セルをチェックさせたい

    エクセルで記入漏れが無いかチェックするマクロを教えて下さい。 A10~A40まで日付を記入させるのですが、何行記入されるかは不特定です。 それぞれの日付に対応する備考欄C10~C40に、記入が無い場合メッセージボックスで通知するというマクロです。ちなみに空白セルが複数あってもメッセージボックスは1回だけの出現にさせたいです。 初心者なもので行き詰ってしまいました。よろしくお願いします。    A   B   C 10 12/5     ○○ 11 12/6     △△ 12 12/7         ←記入漏れ 13 12/8     ×× 14             ←以下空白

  • エクセルの条件付書式について

    A1に「路外 125」、B1に「=RIGHT(A1,3)」の関数が入っていて 現在、B1は「125」と表示されています。 B1の条件付書式は50以上~99までは青表示、第二条件は100以上の時は赤表示と 条件付書式を入れていますがうまくゆきません。 セルに関数が入っている時は条件付書式が使えないのでしょうか? 宜しくお願いします。

  • エクセルのマクロについて教えてください

    エクセルで、その行の中に赤色のセルがある場合は、その行のA列のセルに"○"を入れるというのは、マクロで書く場合はどのように書けばよいでしょうか。 行は1~100まで、列はA~Zまであります。赤色のセルはB列~Z列の所々に点在します。

  • エクセル 文字列セルに条件付書式をセル参照したい

    いつもお世話になっております 質問の表題が変になりましたが、よろしくご教示お願いします。 A1セルに文字列「’00000」があります。 B1セルに数値に変換した「00000」があります。 条件付書式で、B1セルを数値の条件で1~19999 は赤、20000~29999は黄色とかを設定しています。 A1セルは、数値でないので条件付ができませんが、B1の書式、セル色だけ参照できませんか? ほかにA1のセルに文字列があっても色指定できる   ネットワーク共有のファイルで、複数人で使用し、数値を打つと色が出るようにしております。 よろしくお願いします。

  • Excel の『条件付き書式』について

    いつもお世話になっております。 Excelで以下のような表を作成しています。 『条件付書式』について教えてください。  列A  列B  列C   日付  曜日  空白セル 列Aに日付を入力して、その日が土日であったらセルに網掛けをするように設定しています。 列Bは、列Aに日付を入力すると自動で曜日を表示するようにし また、土日であったら自然に網掛けになるようにしました。 (列A・列Bをドラッグして『条件付書式』で設定)  『条件付書式』は…     条件1=WEEKDAY(A○,2)=7     条件1=WEEKDAY(A○,2)=6 …で設定。 列Cも同様にしたいのですが、どうもうまくいきません。 列A・列B・列Cとドラッグさせて『条件付書式』にしたのですが 土日でなくても網掛けになってしまいます。 列Cも土日であれば網掛けにする方法があれば アドバイスいただけますでしょうか。 (自動では無理なようでしたら地道に網掛けしていくとします。) よろしくお願い致します。

  • エクセルでの重複セルの削除

    こんにちは いつもお世話になっています。 エクセル2003を使っています。 A列に文字列があり、条件付書式で重複データのセルに背景色を付けています。 A列は、ふりがなで昇順でソートしてあります。 条件付書式は数式に =COUNTIF(A:A,A1)>1としています。 B列にはA列の特定セルの行にだけ数字データがあります  A列の特定セルとはA列の重複セルの下側のセルです。 重複データは常に2つだけ出てきます。ソートしてあるのでB列にデータの無いセルが上側に配置されているのだと思います。 例えば、 A    B 事項 該当箇所 (見出しです) 愛知  秋田 秋田 12.23.34. 石川 愛媛 愛媛 5.68.78. (A列の秋田、愛媛のセルの背景色が条件付書式で黄色くなっています) という具合です。 ここで質問ですが、 重複セルの上側のセルだけを削除する方法を教えてください。上の例ではB列にデータの無い秋田、愛媛です。 フィルタオプションで「重複セルを無視する」にチェックをいれても重複セルの下側のセルが無視されてしまいます。また、検索で色つきセルだけを表示しようとしても条件付書式ではできないようです。 わかりにくい説明ですみません。よろしくお願いします。

  • エクセルのマクロでこんなことできませんか?

    「あるひにちの横のセルに○印を入れると5日後の横のセルに△印が記入されるマクロを作りたいのです。」 ただし・・・。 その「5日」とはは「5営業日後」つまり土日や祝日を除いた5日なんです。 土日は条件付書式とかで色をつければ土日の認識ってできないのですか? その場合祝日は手動で色をつけようと思います。 それって無理ですか? VBAとかいうのを使わないとダメですか? 何か案がありましたら私でもわかるように詳しくおねがいします。

専門家に質問してみよう