Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
  • ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel2010 VBA 条件色付け)

Excel2010 VBA 条件色付け

このQ&Aのポイント
  • 数字が入っているセルは塗りつぶさない。数字が入っていないセルは塗りつぶすように直したい。
  • Excel2010のVBAを使用して、条件に基づいてセルの色を付ける方法について質問です。
  • セルの値が数字の場合は塗りつぶさないようにし、文字の場合は塗りつぶすようにしたいです。

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2611/5102)
回答No.1

>数字が入ってなかったら塗りつぶすように との事ですが、何色に塗りつぶす様にすれば宜しいのでしょうか?  例えば赤色で塗り潰す様にするのであれば以下の様なVBAとなります。 Sub sample() Dim buf, r As Range, flg As Boolean, i As Integer For Each r In Range("Q6:Q30") flg = True If r <> "" Then For i = 0 To 9 If InStr(StrConv(r, vbNarrow), i) > 0 Then flg = False Exit For End If Next i If flg Then r.Interior.Color = 255 End If Next End Sub  それから、御質問の件であれば、VBAなど使わずとも条件付き書式を使えば良いのではないでしょうか? Q6セルを選択   ↓ Excelウインドウの [ホーム]タブをクリック   ↓ 現れた「スタイル」グループの中にある[条件付き書式]ボタンをクリック   ↓ 現れた選択肢の中にある[ルールの管理]をクリック   ↓ 現れた「条件付き書式ルールの管理」ダイアログボックスの中にある[新規ルール]ボタンをクリック   ↓ 現れた「新しい書式ルール」ダイアログボックスの「ルールの種類を選択してください」欄の中にある[数式を使用して、書式設定するセルを決定]を選択してクリック   ↓ 現れた「次の数式を満たす場合に値を書式設定」欄に =AND(Q6<>"",SUMPRODUCT(ISNUMBER(FIND(ROW(INDIRECT("A1:A10"))-1,Q6))*1)=0) と入力   ↓ 「新しい書式ルール」ダイアログボックスの[書式]ボタンをクリック   ↓ 現れた「セルの書式設定」ダイアログボックスの[塗りつぶし]タブをクリック   ↓ 現れた背景色のサンプルの中から塗りつぶしたい色と同色の四角形をクリック   ↓ 「セルの書式設定」ダイアログボックスの[OK]ボタンをクリック   ↓ 「新しい書式ルール」ダイアログボックスの[OK]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある「適用先」欄をクリック   ↓ Q6~Q30のセル範囲をまとめて範囲選択   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[適用]ボタンをクリック   ↓ 「条件付き書式ルールの管理」ダイアログボックスの中にある[OK]ボタンをクリック

meronsodanomu
質問者

お礼

ありがとうございます。できました。 VBAでなければいけなかったので質問しました。

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

関連するQ&A