※ ChatGPTを利用し、要約された質問です(原文:マクロの組み込み)
マクロの組み込み方法を教えてください
このQ&Aのポイント
Microsoft Office 2007を使用して経理事務を担当しています。毎回同じ場所にコピーできるマクロを作成する方法を教えてください。
書式は複数バージョンあり、一番最後の行にコピーするマクロを作りたいです。
また、Ctrlキーを使用せずにオブジェクトをクリックするだけでマクロを利用できる方法も知りたいです。
経理事務を担当しています。
質問はタイトル通りですが、マクロの組み込みの仕方を教えてください!
私がやりたいことは
『取引があったたびに、指定した範囲の書式をコピーして貼り付ける』
という単純な作業です。
使っているソフトは「Microsoft Office 2007」です。
今までやってきた事は
(1)シートを4枚作成し、1~3枚目が出納帳、4枚目のシートをデータベースとして作成
(2)コピーしたいデータ書式をシート4に作成
(3)マクロの記憶を利用して
Sub tesuto()
'
' tesuto Macro
'
' Keyboard Shortcut: Ctrl+r
'
Sheets("Sheet1").Select
ActiveWindow.ScrollColumn = 4
ActiveWindow.ScrollColumn = 2
ActiveWindow.ScrollColumn = 1
Range("A4:P6").Select
Selection.Copy
Sheets("八十二").Select
Range("A517").Select
ActiveSheet.Paste
End Sub
と記憶して、終了しました。
(4)「Ctrl+r」で実験したところ、理想通りに展開してくれました。
私が知りたいのはここからです。
「Ctrl+r」でコピーさせたマクロですが、毎回同じ場所にしかコーピ―出来ないんです><
経理処理上のデータなので、上から入金のあった順に下へどんどん下降していくようなマクロにしたいんです・・・
ちなみに、書式はこんな感じです
A B C D E F G H I J
年 月 日 金額 科目 内訳 取引先 支払日 支払額 科目
11 8 10 10,000
11 =↑ =↑ =↑
11 =↑ =↑ =↑
11 =↑ =↑ =↑
こんな感じの書式を、2行・4行・7行・10行・15行と5バージョン作り、
どのマクロを実行しても、一番最後の行にコーピ―するようなマクロを
作りたいんです。
このままでは出納庁として機能しませんので、どのようにマクロを変えたらいいのか教えてください><
お願いします。
追記
別件ですが、このマクロを「Ctrl+」を利用しないで、たとえばワードアートのようなオブジェクト(?)をクリックしただけでマクロが利用できるような事って出来ますか?
わかる方がいましたら、合わせて教えてほしいです。
お礼
早速の回答、ありがとうございます^^ ですが、マクロを編集して登録してみましたが、Aの最上段にコピーされてしまいます>< 質問の書式で説明すると、年月日の部分にコピーされてしまって、最下層へ行きません・・・ 年月日を記入しているのは「A5」の行で、現在は今までのデータも合わさって「A515」まで記入されています・・・ 私の入力が間違っているのでしょうか? Sub tesuto() ' ' tesuto Macro ' ' Keyboard Shortcut: Ctrl+r ' Sheets("Sheet1").Select ActiveWindow.ScrollColumn = 4 ActiveWindow.ScrollColumn = 2 ActiveWindow.ScrollColumn = 1 Range("A4:P6").Select Selection.Copy Sheets("八十二").Select 0 Range("A1").End(xlDown).Offset(1, 0).Select ActiveSheet.Paste End Sub のように入力しなおしました・・・
補足
お礼を書いた後で補足ってのもおかしい話ですが、 Range("A1").End(xlDown).Offset(1, 0).Select 命令の意味がやっとわかりました・・・^^; これと似たような形ですが、「A515」に、2行バージョンをコピーして その下「A517」に同じようにマクロ実行で2行バージョンをコピー その下「A519」に10行バージョンをコピー という形で作りたいです^^; 私の質問文が悪かったんですね・・・わかりにくくてすみません^^; > End(xlDown) の部分を > End(xlUp) とでも入力すればいいのでしょうか?