たった11行のスクリプトでドット絵師になる方法

息子の冬休みも今週末でおしまい。来週からは3学期がはじまります。
例によって宿題のチェックをしていると、すごい宿題が残っていました。
 
「学年文集の表紙を描く。テーマはヘビ」
 
息子は絵を描くのが大嫌い。大嫌いなのに、夏休みの宿題でアイデア一本だけで市の賞をいただいてしまったので、学級を代表して絵を描いてくることになっていたらしい。
普通に描かせたら間に合わないので、モノクロのドット絵を使ったグラフィックデザインをしようと提案。
 
前置きが長くなりましたが、そんなわけで本日はExcelVBAを使いドット絵エディタを作成しましたので公開します。
スクリプトはたったの11行。たぶん簡単だろうと思いはじめましたが、思っていた数倍簡単でした。
 

VBAに組み込む2つのスクリプト

1つは、Excelファイル起動時にキーコンフィグの一部を書き換えるスクリプト

Sub auto_open()
 Application.OnKey "{F1}", "セル色の更新"
End Sub

もう1つは、セルの状態を判断し、背景色を書き換えるスクリプトです。

Sub セル色の更新()
 Select Case ActiveCell.Interior.ColorIndex
  Case Is = 1
  ActiveCell.Interior.ColorIndex = 0
 Case Else
  ActiveCell.Interior.ColorIndex = 1
 End Select
End Sub

 

一応解説。

1つ目のスクリプト
ここではファンクションキー{F1}が押された場合、後続のスクリプト「セル色の更新」を起動しなさいと指定しています。
スクリプト名を"auto_open"とする事により、ファイル起動時に動かすのがミソです。
2つ目のスクリプト
アクティブなセルの背景色を調べ、ColorIndexが1(黒)なら0(透明)に、それ以外であれば黒に変更します。
 

使い方

  • 上記スクリプトを組み込んだファイルを保存し、すぐ再オープンします。
  • セルの「高さ」「幅」を正方形になるように整形します。
  • カーソルキーでセルを移動しつつ、色を変えたいセルで「F1」キーを押すと、ドットが描かれたり消されたりします。

 
それだけ。
 

完成品


私くらいの世代には、ドット絵懐かしいです。
子供と一緒にひと遊びできました。