平田淳嗣さんの気持ちを味わうマクロ
あの平田淳嗣さんの気持ちを味わうためのマクロです。
目次
やりたいこと
ユーザをして、あの有名な事件のときの平田さんの気持ちを味わわしめることです。
ソースコードと考え方
ソースコード
リスト1
Public Sub FujinamiTatsumi()
Dim userName As String
userName = VBA.Interaction.Environ("username")
Call MsgBox( _
Prompt:="おまえ、" & userName & " だろ?", _
Buttons:=vbYesNo, _
Title:="藤波" _
)
End Sub
考え方
VBA
ライブラリInteraction
クラスのEnviron()
メソッドを使うと、使用中のPCの環境変数の値を取得することができます。
たとえば、こちらの記事では環境変数APPDATA
を取得して使っています。
今回の場合は環境変数USERNAME
を取得しているわけです。
もし、このマクロを実行するPCのユーザ名が「ヒラタ」だったりしたら完璧ですね!
おわりに
リスト1のマクロは、「はい」を選ぼうが「いいえ」を選ぼうが、特に何が起きるわけでもないマクロです。
MsgBox()
関数の返り値を使って処理を分岐してやれば、もっと平田淳嗣さんの気持ちがよくわかるかもしれません。
リスト2
Public Sub FujinamiTatsumi()
Dim userName As String
userName = VBA.Interaction.Environ("username")
Dim res As VbMsgBoxResult
res = MsgBox( _
Prompt:="おまえ、" & userName & " だろ?", _
Buttons:=vbYesNo, _
Title:="藤波" _
)
Dim msg As String
If res = vbYes Then
msg = "知っていたよ。"
Else
msg = "お、おう……。"
End If
Call MsgBox( _
Prompt:=msg, _
Buttons:=vbOKOnly, _
Title:="藤波" _
)
End Sub
マクロを実行しているPCの環境変数の値が取れる、というのは、特に複数の人が同じファイルにアクセスする環境において、いろいろと応用ができそうですね。