古庄 潤(ふるしょう じゅん)
本業はエンジニア。ICに様々な機械をつなぎ,電流やら電圧を測定する。もちろん,これらの測定器もVBAでコントロールし,取り込んだデータもマクロで処理する。人呼んで,マクロの鬼軍曹!

「♪待ちぼ~け~ 待ちぼ~け~ ある日せっせと・・・」
「先生,楽しそうですね?」
「何が,楽しいもんか」
「だって,鼻歌なんか歌っちゃって,楽しそうじゃないですか」
「鼻歌でも歌わんことには,やりきれんのじゃ」
「また,ふられたんですか?」
「そうじゃない」
「ですよねぇ。ふられることには慣れてるもの」
「失礼な!」
「じゃあ,一体どうしたんですか?」
「この雨じゃよ」
「雨が,どうかしたんですか?」
「釣りに行けない」
「よくあることじゃないですか」
「実は,一昨日知り合いからウキをもらったんじゃ」
「それは,ようございました」
「めちゃめちゃ感度が良さそうで,試したい。が,この雨じゃ」
「それで,落ち込んでいる?」
「その通り」
「先生,馬鹿ですか?」
「なんじゃと?」
「雨だろうが,晴れていようが,仕事があるんだから釣りには行けません」
「あ!」
「お待ちの患者さん,ど~ぞ~」

今月の相談
 ExcelとVBAでハードウエアを制御しています。タイミングを合わせるために,一定時間マクロの実行を停止したいのですが,どうしたらいいでしょうか?

「先生,未知の世界です」
「未知の世界?」
「はい!ハードウエアの制御って何ですか?」
「そりゃあ,ハードウエアの制御でしょう」
「答えになってません」
「そうよなぁ,パーソナルコンピュータ(以後PC)の使い道にはいろいろあってな,データ処理のようなソフトウエアだけで完結するアプリケーションもあるが,機械制御のような用途もあるんじゃ」
「例えば?」
「一般的にはFA,つまりファクトリーオートメーションとか,測定器の制御とか」
「もっと具合的にお願いします」
「製造装置を制御したり,測定器からデータを収集したりするんじゃ」
「むむぅ」
「PCにI/OボードやRS232C,GPIB等のコミニュケーションボードを増設して,機械とデータやコマンドをやり取りしてコントロールすることじゃ」
「さらに,むむぅ」
「現場を知らん君には,想像できんじゃろう。しかし,案ずる事は無い」
「どうしてですか?」
「この患者の依頼は,一定時間マクロの実行を停止するプログラムじゃ」
「あぁ,そうですね」
「待つプログラムということですか?」
「そうじゃ,例えばロボットアームに,90度回転しなさいとコマンドを送ったとしよう」
「はいはい」
「次の操作は,アームを下げることなんじゃが,アームの回転が終わるまで待たなくてはならない」
「どうしてですか?」
「ハードウエアの仕様にもよるが,回転が終わるまで,次のコマンドを受け付けないとしたら?」
「コマンドをプールしないんですか?」
「そういう仕様のハードもあるだろうが,無視する仕様のハードもあるだろう」
「ん~,無視されたら困ります」
「そうじゃな。一連の操作の中のアームを下げる動きが抜けてしまうことになる」
「それでは,思い通りの動きになりません」
「そういうことじゃ。であるからして,アームの回転が終わるまで,アームを下げるコマンドの送信を待たなければならない」
「なるほど。で,できるんですか?」
「もちろん,できるとも」
「では,お願いします」
「心得た!ちちんぷいぷいの・・・えい!」