|
昨晩寝不足だったこともあり、15時頃から猛烈な眠気が襲ってきた。こういうときにはプログラミング(というか、夢中になれる作業。考察はダメ)をするのが一番なので、つまらないデータ処理ではあるけれど、Excelのマクロを作成していた。そんなに時間を掛けるつもりはなかったのだが、気がついたら3時間経っていて、その甲斐あって?大部分はできたと思う。プログラムを作る感覚も、随分と取り戻してきた。
流石に今の業務と関係ない計算をやるわけには行かないから、この後の眠気覚ましをどうするか考えておかなければなぁ。
この連休は土星探査機カッシーニの番組1本とハッブル宇宙望遠鏡の番組2本をやっていたので、結構楽しめた。10月にカッシーニのグランドフィナーレがあると思っていたら、放送中止だそうだ…うーむ、残念。
あと、航空機事故をテーマにした「メーデー」という番組も時々見るのだが、飛行機に乗るのが怖くなるので、あまり見ない方が良いのかも知れない。
科学技術系だとDiscovery Channelも結構良いと思うのは、以前書いたような気がする。
現実逃避業務効率化のために作成していた、Excelのマクロが望み通りの動作をした。肝の部分はLikeを使った文字列検索なのだが、これには二つの問題があった。一つはgrepと同じ使い方ができる訳ではなかったことで、もう一つはダブルカウントの回避である。
Likeでの文字列検索だと、所定の語句の前後に別の語句がある場合にはチェック漏れになる。例えば、所定の語を"その他"にした場合は"その他費用"だとチェック漏れになるので、"*その他*"にする、といった具合である。
もう一つは、文字列中に所定の語句が二つ以上含まれる場合である。これは語句に優先順位をつけて、最優先する語句が含まれていた段階で文字列のチェックを終了して、次の文字列に進むようにする。これは多重のforループから抜け出す必要があるので、あまり使いたくはないがgotoで処理した。
あとは、このマクロで整理したデータの活用である。これは中長期で考える必要があると思っているので、地道にやるしかないか。