• ベストアンサー

excel日付データのセルに色つけ:マクロ

Excelの表があります。 H列のH2セルから以下に、適当な数分“日付け及び時間データ”が入っています。データの最後の次は空白セルです。 そのデータに対して金曜日に薄い水色、土曜日に薄い黄色、日曜に薄い橙色というように色つけをしたい。マクロを作って処理したいのですがどうすればいいですか。 よろしくお願い致します。

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

  • ベストアンサー
noname#123709
noname#123709
回答No.4

文章を見る限りではマクロが分かってる人には見えないですが・・・。 さっぱり分からない人の聞き方ですよね。 下記は一例ですが。 Sub test() Dim i As Long For i = 2 To Range("H65536").End(xlUp).Row If VarType(Cells(i, 8).Value) = 7 Then Select Case Weekday(Cells(i, 8), 2) Case 5 Cells(i, 8).Interior.ColorIndex = 34 Case 6 Cells(i, 8).Interior.ColorIndex = 36 Case 7 Cells(i, 8).Interior.ColorIndex = 40 End Select End If Next i End Sub

taktta
質問者

お礼

たしかにわかってないです。 これを使わせてもらいます。 とても感謝しています。

その他の回答 (5)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.6

もういっぱい回答がでているようですが・・・。 これでも出来ますね。 Sub test01() Dim c As Integer Range("H2").Select Do Until IsEmpty(ActiveCell) w = Weekday(ActiveCell) Select Case w Case 6: c = 34 Case 7: c = 36 Case 1: c = 40 Case Else: c = 0 End Select ActiveCell.Interior.ColorIndex = c ActiveCell.Offset(1, 0).Select Loop End Sub

taktta
質問者

お礼

皆さんありがとうございました。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.5

3通りでいいなら条件付書式のほうがいいでしょうね。 H2から条件をつける範囲を選択して「書式」「条件付書式」で 「数式が」「=AND(ISNUMBER($H2),WEEKDAY($H2)=6)」で書式設定を押し、パターンを薄い水色 「追加」を押して 「数式が」「=AND(ISNUMBER($H2),WEEKDAY($H2)=7)」で書式設定を押し、パターンを薄い黄色 「追加」を押して 「数式が」「=AND(ISNUMBER($H2),WEEKDAY($H2)=1)」で書式設定を押し、パターンを薄い橙色 で設定できます。

回答No.3

マクロと言うことなのでアバウトですが作ってみました。 Public Sub MyDateColor1()   Dim MyUpdateRange As Range   Dim MyWorkRange As Range   Set MyUpdateRange = Range(Range("H2"), Range("H1").End(xlDown))   For Each MyWorkRange In MyUpdateRange     If IsDate(MyWorkRange.Value) Then       If Weekday(MyWorkRange.Value) = vbSunday Then         MyWorkRange.Interior.ColorIndex = 40       ElseIf Weekday(MyWorkRange.Value) = vbFriday Then         MyWorkRange.Interior.ColorIndex = 34       ElseIf Weekday(MyWorkRange.Value) = vbSaturday Then         MyWorkRange.Interior.ColorIndex = 36       End If     End If   Next   Set MyWorkRange = Nothing   Set MyUpdateRange = Nothing End Sub ※他の方の仰るとおり「条件付書式」でも良いような気がしますが・・・

taktta
質問者

お礼

皆さんありがとうございました。

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

VBAで実現する必要性が無いのなら、条件付き書式の方が便利かと思います。

taktta
質問者

お礼

早速の回答ありがとうございます。 条件付き書式の方のやり方は理解しています。

taktta
質問者

補足

他人から与えられたファイルに対してそのようにしたいのでマクロをランさせた方が簡単かと思いました。なおファイルは毎月数件もらいます。

noname#123709
noname#123709
回答No.1

どこまで出来ているのでしょうか?それを掲示して下さい。

taktta
質問者

お礼

皆さんありがとうございました。

taktta
質問者

補足

CHOOSE(WEEKDAY(H2,1))とか考えている段階です。

関連するQ&A