Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11839 / 13646 ツリー ←次へ | 前へ→

【13673】セルの塗りつぶし ひろ 04/5/11(火) 1:00 質問[未読]
【13674】Re:セルの塗りつぶし ichinose 04/5/11(火) 7:24 回答[未読]
【13821】Re:セルの塗りつぶし ひろ 04/5/14(金) 13:42 お礼[未読]

【13673】セルの塗りつぶし
質問  ひろ  - 04/5/11(火) 1:00 -

引用なし
パスワード
   作成した表の中の、未入力箇所を赤色で塗りつぶす関数がわかりません誰か助けて...!!

【13674】Re:セルの塗りつぶし
回答  ichinose  - 04/5/11(火) 7:24 -

引用なし
パスワード
   ▼ひろ さん:
おはようございます。

>作成した表の中の、未入力箇所を赤色で塗りつぶす関数がわかりません誰か助けて...!!
簡単にSpecialCells(xlCellTypeBlanks)メソッドを使用すれば・・
と思いましたが、色々と癖がありましたので、以下のようにしました。

'====================================================================
Sub main()
  Dim rng As Range
  Set rng = Selection
  Set rng = Get_XlcellBlanks(rng)
  If Not rng Is Nothing Then
   rng.Interior.ColorIndex = 3
  Else
   MsgBox "なし"
   End If
End Sub
'=================================================================
Function Get_XlcellBlanks(rng As Range) As Range
'指定されたセル範囲の中から、未入力セルを取得する
  Set Get_XlcellBlanks = Nothing
  With rng
   .Value = .Value
   If .Count = 1 Then
     If .Value = "" Then
      Set Get_XlcellBlanks = rng
      End If
   Else
     On Error Resume Next
     Set Get_XlcellBlanks = .SpecialCells(xlCellTypeBlanks)
     On Error GoTo 0
     End If
   End With
End Function

表のセル範囲を選択した状態でプロシジャーmainを実行してみて下さい。

【13821】Re:セルの塗りつぶし
お礼  ひろ  - 04/5/14(金) 13:42 -

引用なし
パスワード
   お礼、遅れて申し訳ございません。早速試してみます。ありがとうございました!!

11839 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free