表示調整
閉じる
挿絵表示切替ボタン
▼配色
▼行間
▼文字サイズ
▼メニューバー
×閉じる

ブックマークに追加しました

設定
0/400
設定を保存しました
エラーが発生しました
※文字以内
ブックマークを解除しました。

エラーが発生しました。

エラーの原因がわからない場合はヘルプセンターをご確認ください。

ブックマーク機能を使うにはログインしてください。
5/7

自滅への近道sheet5:ルール

「俺、分かったかも知れません」

胸元で挙手をしつつ、指名される前に薔薇筆が話し始めた。

「マクロを実行したかどうかは、そのマクロ内にユーザーネームを取得するよう書き足すだけでいいのでは?」

「そうか、そうすればマクロを実行したか分りますね」

大塚先生は解決の兆しが見えて笑みを浮かべた。


「エル?浮かない顔だな。それじゃ駄目なのか?」

アキラがエルの表情を見て取った。

「いえ、薔薇筆さんのプランが最も簡単で現実的だと思う。ただ…」

「ただ?」

「これを作った人はマクロの中に人名や加算の数字を入れなかったでしょ?私はそのルールでやりたいの」

そこに居た半数は呆れ、残りの半数は意味が分からないといった顔をした。

ルールって何の事だろうと。

「別のマクロを作るので、カラオケでもしててください」

そう言うとエルはカラオケモニターとのミラーリングを解除し、魔道具(パソコン)を持って店の奥へ消えていった。


エルが戻って来たのは川口がカラオケの二曲目を歌い終わる頃だった。

「な、言った通りだろ。三曲目は入れる必要ないって」

川口が幼馴染の大塚に言った。

エルはモニターをカラオケからミラーリングに切り替えた。

「大塚先生、このマクロを大学のファイルにコピー出来ますか?やり方は説明します」

大塚先生は背広の胸ポケットから手帳を取り戻すとメモの準備をした。


エルは説明を終えると、マクロをコピーしたUSBメモリを大塚先生に渡した。

「難しい様でしたら、さっき薔薇筆さんが言ってたやり方で結構です。得られる結果は同じです」

「多分出来ると思います。ただエルさんがこっちの…失礼を承知で言わせていただくと、回りくどいやり方をされるのが今ひとつ理解出来ないのですが…」

大塚先生は正直な胸の内を明かした。

「こういう事じゃねぇかな。エル、違ってたら言ってくれ」

アキラがエルに代わって話し始める。


「学生の成績を改竄するマクロ、もちろんこれが"悪"なのは間違いない。ただ、これは一つの完成されたマクロであってそれに第三者が乗っかる形で機能を付け足す行為に何となく嫌悪感があるんじゃないか?ちょうど学生の評価に後から点数付け足す行為がルール違反なのと同様に…」

アキラの説明に頷くエル。

「なるほど…」

薔薇筆が続ける。

「個人的には悪人にそこまで義理立て(?)する必要も無いように思いますが、エルさんのお気持ちも理解出来ます。後は大塚先生がご判断されるって事で良いんじゃないでしょうか」

(本編と挙動は異なりますが)Excelでキーボードショートカットの使用回数をカウントするマクロを紹介します。以下の手順に従ってください。以下の例では、Ctrl+CコピーとCtrl+Vペーストのショートカットキーの使用回数をカウントする方法を示します。


手順

1.VBAエディタを開く

・Excelを開き、Alt + F11キーを押してVBAエディタを開きます。


2.新しいモジュールを挿入

・VBAエディタで、挿入 > モジュールを選択して新しいモジュールを挿入します。


3.コードを入力

・以下のコードを新しいモジュールにコピー&ペーストします:

-------------------------------------------------

Dim CtrlCCount As Long

Dim CtrlVCount As Long


Sub CountCtrlC()

CtrlCCount = CtrlCCount + 1

MsgBox "Ctrl+C has been used " & CtrlCCount & " times."

End Sub


Sub CountCtrlV()

CtrlVCount = CtrlVCount + 1

MsgBox "Ctrl+V has been used " & CtrlVCount & " times."

End Sub


Sub SetShortcuts()

Application.OnKey "^c", "CountCtrlC"

Application.OnKey "^v", "CountCtrlV"

End Sub


Sub ResetShortcuts()

Application.OnKey "^c"

Application.OnKey "^v"

End Sub

-------------------------------------------------

4.ショートカットを有効にする

・Excelのワークブックが開かれたときにショートカットを有効にするために、ThisWorkbookオブジェクトに以下のコードを追加します:

-------------------------------------------------

Private Sub Workbook_Open()

SetShortcuts

End Sub


Private Sub Workbook_BeforeClose(Cancel As Boolean)

ResetShortcuts

End Sub

-------------------------------------------------

説明

・CountCtrlC: Ctrl+Cが押されたときに呼び出され、カウントを増やします。


・CountCtrlV: Ctrl+Vが押されたときに呼び出され、カウントを増やします。


・SetShortcuts: Ctrl+CとCtrl+Vのショートカットキーをカスタムマクロに割り当てます。


・ResetShortcuts: ショートカットキーの割り当てをリセットします。


・Workbook_Open: ワークブックが開かれたときにショートカットキーを設定します。


・Workbook_BeforeClose: ワークブックが閉じられる前にショートカットキーをリセットします。


このマクロを実行すると、Ctrl+CとCtrl+Vの使用回数がカウントされ、使用するたびにメッセージボックスで通知されます。

評価をするにはログインしてください。
この作品をシェア
Twitter LINEで送る
ブックマークに追加
ブックマーク機能を使うにはログインしてください。
― 新着の感想 ―
このエピソードに感想はまだ書かれていません。
感想一覧
+注意+

特に記載なき場合、掲載されている作品はすべてフィクションであり実在の人物・団体等とは一切関係ありません。
特に記載なき場合、掲載されている作品の著作権は作者にあります(一部作品除く)。
作者以外の方による作品の引用を超える無断転載は禁止しており、行った場合、著作権法の違反となります。

この作品はリンクフリーです。ご自由にリンク(紹介)してください。
この作品はスマートフォン対応です。スマートフォンかパソコンかを自動で判別し、適切なページを表示します。

↑ページトップへ