『条件付書式設定3つまで』(mk) 条件付書式設定って3つまでしかないのですが、増やす方法とかはないですかね?? ---- 過去ログに同じようなのがありました。 [[20041116102053]]『条件付き書式は3つまで?』(aya) (INA) ---- まだエクセル初心者ですのでマクロとかはよくわからないのですが、え〜と条件付き書式3つ設定してまして、そのほかにも、条件をつけて設定したいのですが、勤怠カレンダーを作成していて、第二第三火曜のみグレーの色に塗りつぶししたいのですが、なにかもっとわかりやすい方法とかないですかね? ---- マクロに頼らないとなると、 条件付き書式を3つで対応できるようなレイアウトで 勤怠カレンダーを作成するしかないと思います。 具体的な条件やシートのレイアウトを掲載すれば、良い案があるかも。 (INA) ---- ありがとうございます。少しマクロがんばってみます。またお願いします。(mk) ちょっとだけ質問を変えてみたいと思います。例えば、勤怠カレンダーで第2水曜のみをグレー表示にしたい場合にはやはり、条件付き書式かマクロですぁ?? ---- セルの色などを、条件に基づき書式を設定・変更させるなら、 >条件付き書式かマクロ になりますね。 (INA) ---- なんどもごめんなさい。 例えば、第2.3水曜のみ緑のみ、緑表示にしたい場合はどのようなマクロですかぁ? 教えてください〜。 ----- シートのレイアウトを教えていただけませんか? マクロで処理する対象範囲なども関係してきますので。 (INA) ---- F1〜AK7までに日付が入ってます。その下の列には曜日といった感じで、そのしたはスケジュール表みたいに空白になってます。日付や曜日はWEEKDAY関数などをつかって表示してます。 土日祭日は条件付書式を使い、色わけしてます。 わかりずらいですかね?すいません ---- >F1〜AK7までに日付が入ってます。 1行目の F1〜 AK1 ではないのですか? 7行分の日付とはどのようになっているのでしょうか?  また、曜日は何行目にあるのでしょうか? あと変更したいのは、セル色?文字色? どちらでしょうか? (INA) ---- すいません。ちょっと間違っていました。 G7〜AK7まで日付が入っていて、G8〜AK8まで曜日が入っています。 変更したいのは、セルの色です。 ---- どうぞ。 Sub Sample() Dim r As Range Dim c As Long With Worksheets("Sheet1") For Each r In .Range("G7:AK7") If Weekday(r.Value) = vbWednesday Then c = c + 1 If c = 2 Or c = 3 Then r.Interior.ColorIndex = 43 r.Offset(1).Interior.ColorIndex = 43 End If End If Next r End With End Sub (INA) ---- 今日もお世話になります。質問があります。 このマクロを実行したらば、[インデックスが有効範囲にありません]とでてしまいました。 どうしたらよいですかぁ??(mk) ---- どの行でですか? シート名はあっていますか? (INA) ---- できました。ありがとうございました。 でも、またお願いしてもよいですかぁ?? 第二、第三水曜日は緑になりました。 でも、月を変えてしまうと、ずれてしまいます。 条件付書式をやめて土日は赤表示、第二第三水曜は緑というようにできますか? ---- >月を変えてしまうと これは、どのようなことでしょうか?  (INA) ---- 3月のカレンダーでマクロを実行したら「OK」でした。でも、そのカレンダーを4月にしてみると第二第三水曜ではなく、べつな曜日が緑になってしまうのです。 万年カレンダーみたいに作成してあるので・・・。わかりずらくてごめんなさい。 (mk) ---- G7:AK7 には、2005/3/1〜2005/3/31 のように入っているのですよね? 月が変わっても、1日から入っていれば、問題ないはずですけど・・・ (INA) ---- ほんとに何回もありがとうございます。 F1には月がはいっています。 G7には=F1という式が入っており、G8には=G7+1というように31日まで入っています。 G8には =weekday(G7,1)という式で曜日をだしています。 で、F1の月を変えると連動するようになっているのですが・・・(mk) ---- セルの中身は何ですか? 2005/3/1 のような日付型ですよね? 表示形式の設定で、F1を m"月" にしたりしているのですよね? G7 は d"日"?  (なお、曜日は aaa でもできます) (INA) ---- F1の表示形式は yyyy/mm になっています。 G7は d になっています。 ---- http://camaro.ddo.jp/books/myCalender.xls (INA) ---- ありがとうございます。サンプルでだいぶわかりやすいです。 え〜と、3月のカレンダーでマクロを実行すると、OKです。でもF1を4月に変えてしまうと、3月の水曜の日がそのまま緑になっており、4月のカレンダーでマクロを実行すると、3月の第二第三水曜日は緑のまま残っているのですが、4月のカレンダーにしたらば、4月の第二第三水曜もだけ緑にしたいのです。わがままですよねぇ。ごめんなさい。(mk) ---- マクロを実行とのことですが、日付の変更により Changeイベントで実行していますか? (INA) ---- 横から失礼します。 INAさんのサンプルブックで、ご希望(ご提示の条件)通りになっていますよね。 以下は、条件付書式の場合です。条件としては2つしかないので、対応は出来ますね。 INAさんのサンプルブックで F7からAJ8を選択して条件付書式で 数式が、=WEEKDAY(F$7,2)>5 で赤に設定、追加で 数式が、=AND(WEEKDAY(F$7,2)=3,DAY(F$7)>7,DAY(F$7)<22) で緑に設定 ※失礼しました。読み返したら・・・ >え〜と条件付き書式3つ設定してまして、 なんですね。ペコリ(o_ _)o)) (川野鮎太郎) ---- みなさんありがとうございます。なんだか、一人で考えていても思いつかなくてどうしても頼ってしまいます。 (INA)さんに質問があります。『CHANGEイベント』でマクロを実行というのはどう操作したらよいのでしょうか?教えてください。お願いします。 ---- 私の作ったブックのマクロは、セルF1の値が変化すると実行されます。 セル値の変化で実行されるイベントマクロを利用しています。 F1 に入力した月を変えるだけです。 (INA) ---- (INA)さんが作成してくれたサンプルで試してみたんですが、3月だと大丈夫ですが、4月に変えると5(火).6(水)が赤のまま、9(土)が緑のままです。私のファイルも同じようになってしまいます。(mk) ----- なりませんよ。 2005/4/1 ですよね? もう一度ダウンロードして試してみて下さい。  (INA) ---- もう一度ダウンロードしてみました。でも、同じことになってしまうのです。私のPCが悪いのかな??お願いがあります。 もう一度リンク貼り付けてもらえないですか??って同じですかねぇ・・・。 ---- マクロが実行されると最初に Range("G7:AK8").Interior.ColorIndex = xlColorIndexNone で、G7:AK8のセル色をクリアしているので、 残るということはあり得ないはずです。 最初、2005/3/1 になっているのを 2005/4/1 に変更してそうなるのでしょうか? 川野さんも問題ないとのことですし・・・。何だろ・・・ (INA) ---- 以前のが残るのはわかりませんね・・・・。 条件付書式が残っているとか? ※INAさんのサンプルで6月にすると第3、第4水曜になるのを発見・・・(^_^A; 範囲がFor Each r In Range("G7:AK7") ←F7からですね。 (川野鮎太郎) ---- デバッグ有り難うございます。ファイルを更新しました。(INA) ---- すいません。もう一度ダウンロードしてみたのですが、マクロを実行しようと思ったらマクロがないんです。私のPCがおかしいのですかね?なにかわかりますか??お願いします(mk) ---- 上でも書かれていますが、INAさんのサンプルはイベントマクロと言うもので、 F1セルを変えるだけで自動的に実行されるものですよ。 (川野鮎太郎)INAさんの顔が目に浮かぶ (*/∇\*)キャ。。oO(♪) ---- Ψ(ΦwΦ;)Ψ Ψ(;ΦДΦ)Ψ (INA) ---- (;^^)_旦~~~ --○●◎- ハイ、お茶とお団子の差し入れですぅ^^>INAさん ほんとにご迷惑おかけしています(mk)です。マクロの知識ぜんぜんないので・・・ ごめんなさい。 やっぱりできません。F1を4月に変えても赤になっているところが3月と同じです。 あきらめたくないです(~o~) ---- 1.ブックをダウンロードする 2.ブックを開く 3.日付(F1)を変更する だけの操作なのですが・・・ >お茶とお団子の差し入れ  --○●◎- >^)         ( ̄〜 ̄) モグモグ...           ( -_-)旦~ フゥ  (INA) ---- ありがとうございました。なんとなく解決していきそうです。 前に書いていただいたマクロでもう一度やってみました。←私のファイルに貼り付けて・・・。 でも、そしたらばマクロを実行しないとだめなんです。 月を変えれば、自動的に変わるようにするには、なにか追加で記述するんですか? イベントマクロとかいうのですよね?? ---- 私の書いている文章を理解して読んでいますか? それについては既に回答済みですし、 ファイルをアップした時点で、その仕様になっています。 疲れたので、私はこれで失礼させて頂きます。 タッチ ((( -_-)∧( ̄□ ̄;) 川野鮎太郎さん (INA) ---- (・。・)ゞyes,sir♪ INAさんのサンプルブックの中身をご覧になりましたでしょうか。 標準モジュールではなく、ThisWorkbookモジュールに書いてあるはずです。 mkさんのファイルに貼り付ける場合も、ThisWorkbookモジュールに貼り付けです。 ※ただし、特定のシートだけが対象の場合は、Sheetモジュールに 以下を貼り付けです。   Private Sub Worksheet_Change(ByVal Target As Range) Dim r As Range Dim c As Long If Target.Address(0, 0) <> "F1" Then Exit Sub Range("G7:AK8").Interior.ColorIndex = xlColorIndexNone For Each r In Range("F7:AK7") If r.Value <> "" Then If Weekday(r.Value) = vbWednesday Then c = c + 1 If c = 2 Or c = 3 Then r.Interior.ColorIndex = 43 r.Offset(1).Interior.ColorIndex = 43 End If ElseIf Weekday(r.Value) = vbSunday Or _ Weekday(r.Value) = vbSaturday Then r.Interior.ColorIndex = 3 r.Offset(1).Interior.ColorIndex = 3 End If End If Next r End Sub (川野鮎太郎) ---- 完成しましたぁ。ありがとうございました。 INAさん、川野鮎太郎さんほんとに感謝いたします。 ほんとに X10 ありがとうございました。 (mk)