自分でプログラミングするメリットの1つは、自分好みにつくれること。
私は、メッセージボックスが嫌いなので、一切入れていません。
Excelマクロのメッセージボックス
Excelマクロ(VBA)では、こういったボックスを表示することもできます。
プログラムとしては、こう書くだけです。
(「test」という名称は任意)
Sub test() msgbox ("おわったよ!") End Sub
メッセージボックスに「OK」と「キャンセル」を表示するなら、
こう書きます(「test」「Message」は任意)。
Sub test() Dim Message As Long Message = msgbox("集計しますか?", vbOKCancel) End Sub
通常は、このあとに、「OK」を押したか、「キャンセル」を押したかで処理をわけるプログラムを書いて使います。
Sub test() Dim Message As Long Message = msgbox("集計しますか?", vbOKCancel) If Message = vbOK Then Range("a3").Value = Range("a1").Value + Range("a2").Value End If End Sub
こういったプログラムだと、プログラムを実行すると、メッセージボックスが表示され、OKをクリックまたはEnterキーが押されると、
集計できるというしくみです。
こう書くと、ボタンが「はい」と「いいえ」になります。
Sub test() Dim Message As Long Message = msgbox("集計しますか?", vbYesNo) End Sub
こう書くと、「はい」、「いいえ」、「キャンセル」というボタンです。
Sub test() Dim Message As Long Message = msgbox("集計しますか?", vbYesNoCancel) End Sub
ソフトっぽくって、なんだかかっこいい気もしますが、私はこういったものを一切使いません。
ボックスが表示されて入力するものも使わない主義です。
(RPAで、タスクバーから起動する場合は使うことがあります)
メッセージボックスを使わない理由
メッセージボックスのたぐいを使わないのは、工程が1つ増えるからです。
効率化しようとしていて、プログラミングして、実行させても、メッセージボックスのボタンを押す工程があるとその分無駄になります。
前述の例でいえば、集計するというプログラムを実行したら、すぐ集計してしまえばいいわけです。
集計して
↓
集計しますか?
と聞く必要はありません。
世の中の古いソフト(税務ソフト、会計ソフトも)は、こういったボックスが特に多いものです。
何回クリック(Enterキー)を押させるのか!と疲れることも。
多くの方が使うことを想定しているので確認が必要なタイミングもあるのでしょうが、過保護すぎるような気がします。
というよりも、作成者の責任を逃れるための確認のような意味合いもあるのでしょう。
プログラムを実行したら最後まで流れるように仕事が進むのが理想です。
だからこそ、自分がプログラミングするときは、メッセージボックスを使いません。
Excel内ならExcelマクロ、複数のソフトならRPAを使えば、それが実現できます。
UiPath×税理士。「源泉所得税のe-Tax送信→お客様へメール送信」を自動化。 | EX-IT
「取り返しがつかないことになったら……」
「間違えて処理したら」
「確認しないと心配」
とならないように、プログラムを間違えて実行してしまっても問題のないようプログラミングしています。
たとえば、そのシートにデータをつくらず、別のシートや新しいブックのシートにデータを入れるようにすれば元のデータは壊れません。
心配ならプログラムを実行する前にCtrl+Sで上書き保存をすればいいですし、それをプログラムに組み込む場合もあります。
何かしら工夫はできるので、メッセージボックスを躊躇なくなくすことができるわけです。
だからこそ、お客様に提供するマクロにはメッセージボックスがなく、マクロセミナーでも伝えていません。
自分が使わない、使わないようにしているものは伝えない主義ですので。
自分好みに仕事ができるメリット
仕事をつくるという意味では、プログラミングがおすすめです。
仕事が速くなるだけではなく、自分好みに仕事ができます。
私は、メッセージボックスを使わない主義ですが、使う主義の場合もプログラミングができれば、それを反映できるわけです。
他人がつくったプログラムが使いにくいのは、その人の好みが反映されているからでもあります。
人によりその好みは微妙に違うもので、既成のソフト、仕事のやり方は、多少なりともずれがあるものです。
そのずれがあったら、仕事はうまく進みませんし、進むとしても窮屈でしょう。
自分好みに仕事ができれば、仕事がより楽しめますし、好きでやるので効率も上がります。
私がはじめて勤めた総務省統計局で、プログラムを実行する仕事がいきなりありました。
20弱の帳票を出すプログラム(統計用のプログラム)を1つずつ実行するというものです。
前任者がつくったプログラムを1つずつ実行し、それこそ「印刷しますか?」のボックスで、Yes、Noを指定しなければいけません。
しかも各プログラムに3つずつ、それが20弱ありますので、60回ほどの連打です。
その仕事が毎月あると聞き、「まじか……」と。
プログラムを開いて、連打連打は嫌だと思い、まずは、プログラムをすべて1つにしました。
その後プログラミングに慣れてきたら、もっとうまく書けましたが、その当時はひとまずプログラムをつなげるだけ。
それでも、1つのプログラムにすれば、プログラムを開く手間がなくなります。
あと、連打。
これをなくせないものかと、プログラムをいじり、ボックスが表示されないようにしました。
・プログラム実行→20弱の帳票がプリントアウト
というように変えれたのです。
ただ、プリントアウトは、当時(1997年)、ドットプリンター……。
ギコギコとめちゃくちゃ遅く、しかも配布する分出てきて、それをちぎらなければいけません。
それも嫌だったので、プログラムをExcelマクロに変え、Excelで帳票をつくり、それを研究しつつ、5か月目くらいに変えました。
もちろん、根回しして。こんな感じ(Excelの資料)でもいいですかね?と。
仕事は、自分好みに変えていったほうがよりうまくなります。
・自分好みのソフトを見つける
・そのソフトの設定や使い方を自分好みにする
そして、
・プログラミングというスキルを身につける
ことで、自分好みに変えることができます。
(プログラミング教育が、そのメリットを含んでいるかどうか……。自分好みというのは組織にそぐわないので)
プログラミングは1つの方法でしかありません。
自分好みに仕事を変えていくことを意識してみましょう。
(自分が使わないものは伝えない、売らないというスタンスも自分好みです)
これも独立後のメリットの1つです。
(独立を考えている方は、独立前でも限られた中で自分好みをつくっていきましょう。それが独立後に活きます)
昨日は、たまたま重なった打ち合わせを2件。
同じ場所でやりました。
どちらもハードですけど楽しみな仕事です。
【昨日の1日1新】
※詳細は→「1日1新」
渋谷 坐忘のサンドイッチ
とある打ち合わせ
サンマルク コーヒーフロート
【昨日の娘日記】
バッグを持って歩くのが好きで、昨日は保育園用のバッグを持とうと。
ただ、重すぎてふらふらするので、中身は取り出しました。
バッグを腕にかけたり、ネックレス(たまにトライアスロンの完走メダル)をかけたり、女の子っぽいことをなぜかやるのが不思議です。
■著書
『税理士のためのプログラミング -ChatGPTで知識ゼロから始める本-』
『すべてをがんばりすぎなくてもいい!顧問先の満足度を高める税理士業務の見極め方』
ひとり税理士のギモンに答える128問128答
【インボイス対応版】ひとり社長の経理の基本
「繁忙期」でもやりたいことを諦めない! 税理士のための業務効率化マニュアル
ひとり税理士の自宅仕事術
リモート経理完全マニュアル――小さな会社にお金を残す87のノウハウ
ひとり税理士のセーフティネットとリスクマネジメント
税理士のためのRPA入門~一歩踏み出せば変えられる!業務効率化の方法~
やってはいけないExcel――「やってはいけない」がわかると「Excelの正解」がわかる
AI時代のひとり税理士
新版 そのまま使える 経理&会計のためのExcel入門
フリーランスとひとり社長のための 経理をエクセルでトコトン楽にする本
新版 ひとり社長の経理の基本
『ひとり税理士の仕事術』
『フリーランスのための一生仕事に困らない本』
【監修】十人十色の「ひとり税理士」という生き方