年度末になると、いろいろExcel作業が増えます。 いつもストレスなのが、シート間を移動すること。 こっちからデータをコピーして別のシートに張り付けて、また元のシートに戻って。。。 そのたんびにマウスでシートを切り替えていたのですが、CTRL+PageUp/Downで移動できるみたいですね。 僕のキーボードはコンパクトなタイプなので、PageUP/Downが独立したキーになってません。 なので、CTRL+Fn+PageUP/Downになり、ちょっぴり面倒なのです。 これがCTRL+→とかにできたらどんなに幸せか。。。 これを実現する方法がどうしてもわからなかったので、Alt+数字でシートを行き来するしくみを作りました。 シートを行き来するマクロを作って、それをクイックアクセスツールバー(上のちいさいやつね)に割り当てる方法です。 1.シートを行き来するマクロ これはこんな感じ。 (出所:「前のシートや次のシートを選択する (Nextプロパティ / Previousプロパティ):Excel VBA|即効テクニック|Excel VBAを学ぶならmoug」、http://www.moug.net/tech/exvba/0040030.html ) このマクロを実行すると、次のシートを表示してくれて、最後のシートで次ってやると、最初のシートに戻ってくれます。戻る方(PreviousSheet)はその逆です。
Sub NextSheet() If ActiveSheet.Name = Sheets(Sheets.Count).Name Then Sheets(1).Activate Else ActiveSheet.Next.Activate End If End Sub Sub PreviousSheet() If ActiveSheet.Name = Sheets(1).Name Then Sheets(Sheets.Count).Activate Else ActiveSheet.Previous.Activate End If End Sub
2.いつでも呼び出せるように マクロですが、エクセルシートを開くといつでも使えるようにしたいんですよね。 吉田拳「たった1秒で仕事が片づく Excel自動化の教科書」2016年 は良い本ですが、その辺は載ってないみたい。 あくまでも、特定の作業するためのシートを作成して、そこから他のシートをコントロールするしくみづくりというところに焦点があるようです。 僕のやりたいことは、「Excelの使い勝手を改善する」ためのマクロなので、ちょっと違いました。 そこで、以下を参考に、個人用マクロブックを使ってみました。
使用頻度の高いマクロを上手に活用する方法としてオススメしたいのが「個人用マクロブック」です。 (出所:「個人用マクロブックの作成方法と使い方 [Excel VBAの使い方] All About」、https://allabout.co.jp/gm/gc/297809/ )
3.ショートカットを追加 これでようやくやりたいことができたのですが、これをいちいち呼び出していたり、マウスでクリックしていてはらちがあきません。 ショートカットは、開発タブから「マクロ」をクリックして、該当の関数のオプションで設定できます。 が、「CTRL+なんとか」しかないんですよね。 でも、「CTRL+なんとか」はもう空いてるのがないので、「CTRL+ALT+なんとか」あたりでやりたいのですが、できないようです。 最後の手段は、クイックアクセスツールバーです。 こちらは、作業中にALTを押すと、メニューに文字が出てくるのでわかりますが、「ALT+なんとか」のショートカットを割り当てることができます。 そこで、オプションから、クイックアクセスツールバーの設定を出して、マクログループからさっき作成したショートカットを追加します。 僕のばあいには、ALT+5, 6がそれぞれのマクロに割り当てられました。