※ ChatGPTを利用し、要約された質問です(原文:エクセル・マクロの悩み 助けて下さい!)
エクセル・マクロの悩み 助けて下さい!
このQ&Aのポイント
エクセル・マクロを利用している中で行き詰まっています。マクロで行を移動する際に想定した動作にならず困っています。具体的な問題点としては、マクロの記録内容が予期しないセルに選択されてしまうことです。この問題に対して別の解決方法を見つけたいと思っています。
毎日行っている請求書の作成と印刷、そして日計表へのコピー作業においてマクロを使って効率化しています。しかし、移動する行に関して何かと問題が発生しています。現在のマクロの記録内容では、行の移動先が予想外なセルになってしまいます。この問題を解決するために、他のアイディアを求めています。
エクセルでの作業効率化のためにマクロを使用していますが、行の移動時に問題が発生しています。最終行での行移動について記録したマクロの内容が予期しない動作を起こし、望んだ結果を得ることができません。この問題の解決策や他の方法についてアイディアを募集しています。
便利なのでマクロをいろいろと活用していますが、
今、行き詰っている部分があります。
エキスパートの方、お助けくださいませんか。
【困りごと:JPEG 請求管理の画面とマクロ 参照】
毎日、1行の請求書を作成・印刷します。(左上)
その1行を、毎日、日計表にコピーするのですが、
次に日、1行下にコピーするマクロで、行き詰っています。
一つ下の行に移行するために、見出し(i4 商品名)のセルに行き、end+downで
最終行(i13)に行き、もう一度、downを押して、1行下(i14)に行きコピーします。
これを、「マクロの記録」で、登録しますが、実際のマクロの
登録内容は、end+downの次が、今止まっているセル(i13)を選んだ状態になります。
つまり、(例)10日の新しい記録を1行下(14の行)に入れたいのに、
9日の行(13の行)に、上書きしてしまいます。
Selection.downとなってほしいのですが、
downの記録が、Range("i13").Select となってしまします。
※ 下矢印で、Selection.downというマクロはないようです。
別のやり方があればと考えたのですが、うまくいきません。
どなたか、良いアイディアをお聞かせいただけませんでしょうか?
どうか、よろしくお願い申し上げます。
お礼
kkkkkmさま 色々参考にして、以下のようにしましたら、何とか解決しました。 Sub 請求記録() ' ' 請求記録 Macro ' ' Range("B5:E5").Select Selection.Copy Range("I4").Select Selection.End(xlDown).Select ActiveCell.Offset(1, 0).Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Range("A1").Select Application.CutCopyMode = False ActiveWorkbook.Save End Sub 大変お世話になりました。 今後も頑張ります。 また機会があれば、よろしくお願い申し上げます。
補足
kkkkkmさま 超特急のご指導、ありがとうございました。 ポイントに対して、漏らさずご指導いただき感謝申し上げます。 2つの素晴らしいマクロもご紹介くださり、早速、試してみましたところ どちらもうまく動きました。 短いほうのマクロなどボディーはたったの 2行!驚きました。 できる方ですね。 スゴイです! 僕もそんなレベルになりたいなと夢を膨らませました。 小生のいまの段階では、たとえ長くても、理解できるやり方でと 思って、教えていただいた Offset を元のマクロに組み込んでみました。 Sub 請求記録() ' ' 請求記録 Macro ' ' Range("B5:E5").Select Selection.Copy Range("I4").Select Selection.End(xlDown).Offset(1, 0) Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Range("A1").Select Application.CutCopyMode = False ActiveWorkbook.Save End Sub Offsetの行がコンパイルエラーで、戻ってきました。 小生は、ビギナーでできのわるい生徒ですが、どこが悪いのか、 どう直せばよいのか、教えていただけますでしょうか? 1回目の返信の時から、ベストアンサーにする気は十分あるのですが、 そうしてしますと、コミュニケーションが途絶えてしまうと思い、していません。 最後に必ずベストアンサーとさせていただきます。 ひょっとして、マクロの指導サイトでも開設しておられるのではないかと 想像しております。 もし、そうであれば、是非、URLを教えてください。 今後も、時折、室m今させていただきたいと思っています。 どうか、よろしくお願い申し上げます。