お勉強 :  パッチあて作業 

ちまたを騒がせた WannaCry というランサムウェア絡みです。
幸いにも私の職場では感染・発症した PC は無かったようで、
騒ぎにはなりませんでしたが、念のための対策確認するのに
結構な人手と時間がかかっていました。

Windows の種類と x86 か x64 かであてるべきアップデートが
違って確認するのが手間だったり、インターネットからは切り
離されているネットワークにある PC にもアップデートを
あてるなどの作業を行いました。

インターネット上では、@ITなどで情報がまとまっており、
MSからはそのアップデートだけオフライン用にダウンロード
しておき、アップデートして再起動して・・・という作業を
実施していました。

一通り終わったけど、やっぱりセキュリティは大切だな。
さて、今晩の体重は 80.8kg でした。


[ 2017/05/17 22:31 ] お勉強 | TB(0) | CM(0)

お勉強 :  謎が解けた 

EXCELのVBAでスクリプトを書いていて、あるボタンコントロールを
押したときに関数を起動させて・・・とやっていたはずなのですが、
途中から意図したように動かなくなってしまいました。

MsgBox で適当にメッセージを表示させながら、どこまで進んで
いるのかを確認してみると、Sheets.Range.Select する直前まで
進んでいて、その後にはなぜか進まない。

なんで?と数日疑問に思っていたのですけど、今日帰宅するときに
小一時間歩きながら帰宅したら、途中でひらめきました。

あるシートでは、シート内のあるセルをクリックしたら・・・と
いう動作をさせたくて Worksheet_SelectionChange を使って
いたのですけど、同じシート上で Sheets.Range.Select したときに、
そこからイベントに処理を持っていかれてしまうから、という
理由でした。

なるほどなあと思いつつ、それならばと Select しないように
コードを書き換えてしまったのですが、ちょっと考えなおしたら
処理中はイベント発生を Application.EnableEvents で無効化
すればよかったのか、と改めて理解しました。

さて、今晩の体重は 80.8kg でした。


[ 2017/05/16 23:12 ] お勉強 | TB(0) | CM(0)

お勉強 :  EXCELのVBAに苦戦 

ある列内のセルをクリックしたら・・・という動きを使いたくて、
Worksheet_Change イベントを使えばよいことはわかったが、
1セルだけ選択された場合は意図したように動くものの
複数セルを選んでいると動かない。

1セル選択したときだけ動けばいいのはどう考えればいいのかと
調べていてたら、上記イベントの引数で Range オブジェクトが
渡されて、選択しているセル範囲が知らされてくるので、
選択されたセルの個数である Range.count が 1 か、そうでないか
で見分ければよいことを知る。

なるほど、VBAでスクリプトを書くとはいえ、EXCEL上で何か
しようとすれば、人間が操作するのと同じようにカーソルを
移動したりしなければならんのだなあ、と今更ながらに
勉強したのでした。

さて、今晩の体重は 81.4kg でした。


[ 2017/05/12 20:55 ] お勉強 | TB(0) | CM(0)