• ベストアンサー

エクセルVBAを独学して公休管理表を作ってます。

会社の公休管理表を作成したく取り掛かっていたんですが壁に突き当たりました。すべて独学でエクセル・最近ではVBAを覚えたく本を見てるんですがイマイチで・・・問題はシート1のあるセルに日にちを打ち込むと別のシート2の一覧に反映するまではできたのですが、反映したと同時に色も付けたいのですがどうしたらよいか解らなく・・教えてくださる方いたらよろしくお願いします。素人で申し訳ございません。

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

  • ベストアンサー
  • FEX2053
  • ベストアンサー率37% (7991/21371)
回答No.1

マクロの自動記録って知ってますか? http://www.eurus.dti.ne.jp/yoneyama/Excel/vba/vba_01.html この自動記録を、例えば「セルに色を付ける」作業だけ やってみるんです。そうすると、メチャ長いコードが記録 されますが、そのコードの英文を読んで「セル色のコード っぽいな」ってトコ以外、'を付けてコメントアウトしてみる んです。 まあ、Webで検索しても良いですが(VBAはヘルプで検索 するより、直接Googleなどで検索した方が分かりやすい 解説がヒットします)、私はそうやって自動記録でVBAを 学びました。 自動記録、下手なヘルプを探すより、ずっと判り易いです。 試してみて下さい。 ちなみにセルに色を塗るのは、色のコード番号をXXXとして Selection.Interior.Color = XXX ってコードになるはず(記憶を頼りなので、間違ってるかも)

その他の回答 (1)

  • yosifuji20
  • ベストアンサー率43% (2675/6115)
回答No.2

これは条件付書式ではだめでしょうか。 シート2の該当セルが日付のデータになったときに指定の色にするというだけならこの機能で十分と思いますが。 それとVBAの習得ですが、基本的にこれはBASIC言語です。 まずBASICの基本はご存知でしょうか。 勿論「マクロの記録」昨日程度ならばこれは不要ですが、多少でもVBAをご自分で修正したいというのであれば、BASICの基本から勉強したほうが結局は早い思います。 VBAと言ってもプログラミングの言語ですから最低限のプログラミングの知識は必要です。 例えば  If then Else For Next Do Until などの基本的概念を理解して、空でそれを使えるようでなければVBAは上手に使えないと思います。 一度プログラミングの入門書をお読みになってはいかがでしょうか。 もしそこまでやる必要もないというのであれば、「マクロの記録」で出来る程度の範囲にとどめたほうが現実的だと思います。

rinotti
質問者

お礼

回答ありがとうございました。基本的概念を理解するようもう一度BASICの基本から勉強したいとおもいます。ベストアンサーに選べなくて申し訳ございませんでした。また解らないことあればご回答お願いします。

関連するQ&A