課題は、右にも下にも長い、でっかいexcelシートの数字を拾う繰り返し作業
「マクロの記録」は簡単だよ。覚えて損はない。
マクロ教育に熱心な上司から転記作業を任され、さっそく記録。
自分なりに見つけた解決策はこちら。
・「スクロールバー」を使った操作は記録されない
⇒「マクロの記録」では、スクロールバーを使わず、セル上を「→」矢印キーで動かしながらセル移動します。
・マクロを「実行」する際、いつも同じセルを選択してスタートさせる。
⇒スタートはいつも「同じ見た目」「同じ状態」にしておきます。今回は2つのファイルを開いておいて、どちらも「記録した時と同じセルを選択した状態」で「実行」をクリックします。
だがしかし初心者の理解は深まったので、私のミスを再現、解決策とともにご紹介します。
目次
「マクロの記録」ができない ⇒理由はスクロールバー操作?
他部署からいただいたexcelが横長
別部署が管理する表から、私の部署が欲しいデータを抜き取り、毎月まとめます。(画像は説明用のイメージです。実際は全然違う)
横に長いので、スクロールしないとお目当てのセルが出てこない。
例として、2020年4月、2021年4月、2022年4月、それぞれの年数の「タヌキ部閲覧数」を抜き出す、とします。
一時的な貼り付け先として、下の画像右のような欄を作りました。お目当てのセルをコピーして、データにまとめます。転記先が「別のexcelファイル」ということですね。
「繰り返し」の転記作業→「マクロの記録」を覚えたい
転記元と転記先のファイルを開いておきます。説明画像では左右に配置 (windows + →)。
「開発」タブ→「マクロの記録」→「マクロ名」を入力(例:tanuki)→「OK」
例:左のファイルのC7セルをクリックし、ctrl+C、右のファイルのC4セルをクリック、貼り付ける(値貼り付け)(※ctrl+v でも可)
同様に、2021年4月をコピーして貼り付ける。スクロールして2021年4月を表示させました。
2022年4月も同様。繰り返し作業
「マクロの記録」を終了します。
記録できているか確認します。セルの数値を削除して、「tanuki」マクロを実行します。
なんということでしょう。2020年4月、しか数値が入ってません。
何度やってもダメ。丁寧にやってもダメ。・・・悩んでしまいました。3日間ググりました。
「セル移動」で再び、「マクロの記録」を行う
1セル目の操作は同じ。コピー&ペーストです。ただし、事前準備は変えて「右ファイルのカーソルはC4セルを選択した状態」で、マクロの記録をスタートさせました。(後述します)
続いて、スクロールするのをやめ、選択したセルを「→」で動かし2021年4月を表示させて、コピー&ペーストしました。
同様に、スクロールはせず、セル移動します。
「記録した時と同じ状態」でマクロを動かす
それまでは、選択したセルがどこにあるのか、気にせずにマクロの「実行」ボタンを押していました。
今回は「見た目」を同じにしました。
ということで、「実行」します
まとめ
「マクロの記録」は奥が深いですね。
・スクロールバーは使わない
・記録した時と、スタート位置は同じにする
私の実務としては、受け取るファイルのセル位置が毎回違うから、マクロは意味ないんじゃないか・・・という雲行きになってます。