エクセル2007を使っています。予定表で日付と曜日の覧で曜日のセルに関数の

、=TEXT(WEEKDAY(A1),"aaa")を入れて自動的に曜日が出るようになったのですが
今度はマクロを使って日付と曜日の字を赤色に変えてやりたいのですがどうすれば良いでしょう

回答の条件
  • URL必須
  • 1人2回まで
  • 13歳以上
  • 登録:2010/06/24 17:24:52
  • 終了:2010/06/24 19:46:14

ベストアンサー

id:SALINGER No.4

SALINGER回答回数3454ベストアンサー獲得回数9692010/06/24 18:11:44

ポイント30pt

マクロは動的に処理するというよりは、その都度実行する使い方になります。

マクロでシート全体の"日"を赤字にするマクロは

Sub 特定の文字色の変更()
    Dim r As Range
    Dim firstAddress As String

    Set r = Cells.Find(What:="日", LookIn:=xlValues, LookAt:=xlWhole)

    If Not r Is Nothing Then
        firstAddress = r.Address
        Do
            r.Font.ColorIndex = 3
            'r.Offset(0, -1).Font.ColorIndex = 3    '例えば曜日の左が日付なら
            Set r = Cells.FindNext(r)
        Loop While Not r Is Nothing And r.Address <> firstAddress
    End If
End Sub

条件付書式はもっと簡単にできます。

Excel2007は条件付書式が機能強化されてわかりづらくなりましたが、

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-jyosyo....


変えたい箇所を選択して、ホームタブ→条件付書式→セルの強調表示ルール→文字列を選び

日 書式: 赤の文字

とするだけです。

その他の回答(4件)

id:taknt No.1

きゃづみぃ回答回数13539ベストアンサー獲得回数11982010/06/24 17:30:12

ポイント14pt

たとえば セルがA1だと

Range("A1").Font.ColorIndex = 3

とすればいいです。

それぞれのセルで実行させてやればいいです。


http://www.relief.jp/itnote/archives/000482.php

id:chatora

毎月表の日にちと曜日が変わっていくので "日" と言う文字を探してその文字と

日にちの色を赤に変えたいのですが

2010/06/24 17:52:03
id:beatgoeson No.2

beatgoeson回答回数128ベストアンサー獲得回数142010/06/24 17:33:47

ポイント20pt

マクロを使わなくても、条件付書式を使えばセルや文字の色を変えることが出来ます。

http://atiboh.sub.jp/s05jyoukensyosiki.html

いかがでしょうか。

id:yamaneroom No.3

yamaneroom回答回数1040ベストアンサー獲得回数612010/06/24 18:06:35

ポイント20pt

土日祝日に色をつけたExcel予定表を作ってみよう

http://pc.nikkeibp.co.jp/article/NPC/20070407/267694/

id:SALINGER No.4

SALINGER回答回数3454ベストアンサー獲得回数9692010/06/24 18:11:44ここでベストアンサー

ポイント30pt

マクロは動的に処理するというよりは、その都度実行する使い方になります。

マクロでシート全体の"日"を赤字にするマクロは

Sub 特定の文字色の変更()
    Dim r As Range
    Dim firstAddress As String

    Set r = Cells.Find(What:="日", LookIn:=xlValues, LookAt:=xlWhole)

    If Not r Is Nothing Then
        firstAddress = r.Address
        Do
            r.Font.ColorIndex = 3
            'r.Offset(0, -1).Font.ColorIndex = 3    '例えば曜日の左が日付なら
            Set r = Cells.FindNext(r)
        Loop While Not r Is Nothing And r.Address <> firstAddress
    End If
End Sub

条件付書式はもっと簡単にできます。

Excel2007は条件付書式が機能強化されてわかりづらくなりましたが、

http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-jyosyo....


変えたい箇所を選択して、ホームタブ→条件付書式→セルの強調表示ルール→文字列を選び

日 書式: 赤の文字

とするだけです。

id:taknt No.5

きゃづみぃ回答回数13539ベストアンサー獲得回数11982010/06/24 18:14:41

ポイント16pt

質問があいまいと判断されますので 以下の点を 確認させてください。

>今度はマクロを使って日付と曜日の字を赤色に変えてやりたいのですがどうすれば良いでしょう

変更するのは 日付と曜日の字の色のみでいいのか?

>毎月表の日にちと曜日が変わっていくので "日" と言う文字を探してその文字と日にちの色を赤に変えたいのですが

日という文字を探すならば、どのようにして表示されてるのかが わからないと難しいです。

たとえば

24日

6月1日

2010年01月01日

など その表示形式(日の場合は 桁数がかならず2桁なのか 1桁と2桁の混合なのか)を教えてください。

また 曜日は 単体のセルなので Range("A1").Font.ColorIndex = 3 でOKです。

あと、表示形式のみ変更している場合は、対応できません。

文字列になっていないとダメです。

つまり、そのセルを 選択したとき、fxと書かれた欄とセルの表示が一致している必要があります。


http://q.hatena.ne.jp/1277367890

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません