• 締切済み

エクセルでマクロを使って出面表は作れますか?

エクセルマクロ(VBA)を使って出面表を作りたいのですが、 初心者のため本を読みましたがよく分かりませんでした。 やりたい事はA1からI86までのセル(表になっています。)をA87にコピーし、日付や出勤した日のチェックを消して項目だけの表にしたいのです。 そして次にマクロを実行させた場合はA109に表がコピーされるようにしたいのです。 縦列ごとに何日出勤しているのか出勤日数合計の欄があるのですが、翌月の出面表に先月分まで(今までの総出勤日数)の出勤日数欄もあります。今月の日数はSUMでだし、総日数は=B71+B36のように先月までの合計+今月の合計という数式を打って日数をだしています。これも自動にマクロでできないものでしょうか? どなたかご存知の方がいらっしゃいましたら、教えてください。よろしくお願いします。

みんなの回答

  • higekuman
  • ベストアンサー率19% (195/979)
回答No.2

こんにちは。 あえて、厳しいことを言わせてもらいます。 > マクロの記録で記録させたんですが、次にマクロを実行すると、 > またA87にコピーされてしまいました。 当然です。 A87にコピーするマクロをそのまま実行したのですから。 A87にコピーするマクロを、「マクロの記録」で知ることが出来たのですから、そのマクロを見て、なぜそのマクロでA87にコピーできるのかを理解して、どこをどう変えれば、望みどおりのマクロに変更できるのかを考えましょう。

tnmy1109
質問者

補足

マクロの記録で同じところにコピーされるのかは分かっております。 VBで中身をみてRange("○○:○○").Selectの部分でコピー先が指定されていると思うので、そこを変更すればいいと思いますが何に変更するのか調べても見つけられなかった為、ここで質問させていただいたのですが・・・ 調べても出来ませんので、1回ずつ同じことを繰り返して作業したいと思います。 アドバイスありがとうございました。

  • higekuman
  • ベストアンサー率19% (195/979)
回答No.1

やりたいことは、すべて基本的なことばかりなので、まずは、マクロでやりたいことを、手動でやって、それを「マクロの記録」で記録してみましょう。

tnmy1109
質問者

補足

マクロの記録で記録させたんですが、次にマクロを実行すると、 またA87にコピーされてしまいました。 コピーした表の下にコピーをさせたいのですが、マクロの記憶では できませんでした。 A87にコピーされるので、出勤総日数もうまくいきませんでした。 どのようにすればいいのでしょうか? アドバイスなどありましたら教えていただけないでしょうか。