Refsort/Ruby の Excel インターフェース
またまた Refsort/Ruby(リリース実績は新しいほうから *1 *2 *3 *4 *5 *6 *7 *8 *9 *10)ネタになってしまうのですが,引退して暇ができるとこのような事も出来てくるという見本です.かねてから,Refsort/Ruby を Excel 上で使えるようにしたいと思っていました.なぜならば,コマンドコンソールを立ち上げてコマンドを打ち込むとか,出力をファイルにリダイレクトしてエディタで編集しなおすとか,ふた時代ほど古いユーザー体験を強制するユーザーインターフェースは自分でも不満に思っていたのです.
数年前の現役時代に Visual Basic for Applications (VBA) の入門本を買ってきて読んでみたのですが,あまりに初心者向きの本でやりたいことまでの距離がありすぎると気が付き,かといってより高度なプログラムを書けるほどの知識もないという状態が続き,大変欲求不満を感じていました.
しかし,時間ができるということは非常に良いことで,新たに教科書を読むことなく,Web の上でやりたいことの解決法を検索しながら,いわば見よう見まねでプログラムを書き始めてみると,VBA の作法には手を焼いたものの,意外と短い日数で何とか動くものができてしまいました.
上にその画面を示しますが,並べ替えをしたいリストを Excel 上に作っておき,それをマウスで選択したうえで,右上のボタンを押します.すると Refsort/Ruby が背後で動き,並べ替えた結果をクリップボードに書き出してくれます.あとは,出力したい場所のセルをクリックして,Ctrl-V とキーを叩いてクリップボードの中身をワークシートに張り付けるだけです.クリップボードは汎用なので,エディタ上に張り付けることだってできます.
Refsort の各種オプションのうち,M オプションだけはインデントをどう扱うのか決めかねているのでサポート外としていますが,それ以外のオプションは問題なく動きます.また,フィールド区切り記号をカンマに固定しているため,複数列にまたがるリストの扱いなど一部に制約は残りますが,これで生産性は劇的に上がったのではないかと思います.ドキュメントを書き上げたうえでリリースしたいと思います.
残る課題は,Ruby のインストール作業と,Ruby や Refsort の場所の指定をいかに簡単にするかですが,これらについてはなかなか良いアイデアが思い浮かびません.しばらく考えてみたいと思います.
| 固定リンク | 0
| コメント (0)
| トラックバック (4)
最近のコメント