電子書籍の厳選無料作品が豊富!

年と月を選べるようにドロップダウンリストを作りました。同じシートに枠をB7セルから横方向に31日分枠を作り、縦列A9セルからはメンバーの名前が入る枠を作りました。ドロップダウンリストの年月を選択して額縁スイッチをクリックしたら自動的にその年月の日付がB7セルから横方向に入力されるマクロの組み方教えて下さい。
説明下手くそですみません。。

「エクセルマクロの組み方」の質問画像

A 回答 (2件)

マクロでなくてはいけませんか



A4セルに年(2022)、C4セルに月(2)が入っているとき、B7セルに以下の式を入れて、AF列まで横にコピーします。

=DATE($A4,$C4,COLUMN(A1))

すると、月日が表示できます。(表示形式は自由に選択してください)

3月1日になって、月をまたいだ日付は表示したくない場合はB7セルの式は以下にしてください。
=IF(MONTH(DATE($A4,$C4,COLUMN(A1)))=$C4,DATE($A4,$C4,COLUMN(A1)),"")

なおマクロを使用する場合はセルの結合は行わない方が良いですよ。
場合によってはセルが結合されているか判断してから処理しなくてはならなくなるので、処理が難しくなります。
    • good
    • 0
この回答へのお礼

がんばります

お礼の返事遅れて申し訳ございません。分かりやすい説明ありがとうございました。
マクロで考え過ぎていた部分があるので、より簡単に出来るならこちらでも試してみようと思います。
ありがとうございました!

お礼日時:2022/02/04 22:31

こんばんは



直接の回答ではなくて申し訳ありません。

関数で同じことを行えば、いちいちボタンを押す必要も無いと思いますけれど、なぜマクロなんでしょうか?

年、月の指定がどのような値になっているのか不明なので(単純数値かシリアル値か文字列か)、日付を求める方法ははっきりしませんけれど、これに関しては関数でも、マクロでも同様です。


関数で行う場合の例を、ご参考までに。
(以下のサイトでは、日付が縦に並んでいる点が異なりますが、考え方は同様です)
https://proengineer.internous.co.jp/content/colu …


マクロで行っても同様で、月の1日を算出したら、あとは順にセルに値を設定してゆけば良いだけです。
ご質問以外の余分な処理内容が多いですけれど、以下は、マクロでのカレンダー(予定表)作成の例です。
https://excel.kuuneruch.com/make-yoteihyo/
    • good
    • 1
この回答へのお礼

やってみます

迅速な回答ありがとうございます。
なぜマクロでしたいかというと、第一に私自身のスキルアップです。そして、これは理由にはなっていないかもですが、これを会社全体で共有するとなると、いちいち関数で作るより、初めに私がマクロで組んでおけば、あとは使用する人、場所が楽にできると思いマクロで組みたいと思いました。
参考資料拝見させていただきます。
ありがとうございました!

お礼日時:2022/02/03 22:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!