表計算に貼付
rpnで計算した結果を表計算ソフトに貼付(ペースト)したいと思ってもうまくいきません。以下を試してみると分かります。
1 6
2 7
3 8
4 9
5 10
>echo 1 2 3 4 5 6 7 8 9 10 | rpn 5 -c fold >tmp
①表計算を起動。
②tmpファイルをエディタ等で開いてコピー。
③表計算ソフトにペーストすると…。
+-------------------------------------------------------------+
|□ 表計算ソフト _□×|
+-------------------------------------------------------------+
| ファイル(F) 編集(E) 表示(V) 挿入(I) 書式(O) |
+-------------------------------------------------------------+
| | A | B | C | D | E | |
|--- ------- ------- ------- ------- ------- |
| 1 | 1 6 | | | | | |
| 2 | 2 7 | | | | | |
| 3 | 3 8 | | | | | |
| 4 | 4 9 | | | | | |
| 5 | 5 10 | | | | | |
| 6 | | | | | | |
rpnの計算結果がAの列にすべて入ってしまっています。表計算ソフトでデータを再利用するにはA列とB列に分かれてペーストできているほうが便利です。このようになってしまうのは、rpnが数値と数値の間を半角スペースで区切って表示しているためです。
半角スペースで区切った状態であっても、表計算に読み込む際に数値の区切り記号として半角スペースを指定すれば、A列とB列に分けて読み込むことができます。
表計算ソフトへ簡単にペースト
ちょっと面倒ですね。そこで、rpnの計算家結果をすぐ表計算ソフトにペーストできるプログラムをカレンダー・システムパッケージで用意しました。このentabプログラムは連続する1つ以上の半角スペースを1つのタブ区切りに変換してくれるプログラムです。
1 6
2 7
3 8
4 9
5 10
計算結果を見ると数値の区切りが広がっていることが分かります。これは区切りにタブ記号を使っているからですが、タブで区切ると表計算にペーストするときに楽になります。次をご覧ください。
①表計算を起動。
②tmpファイルをエディタ等で開いてコピー。
③表計算ソフトにペーストすると…。
+-------------------------------------------------------------+
|□ 表計算ソフト _□×|
+-------------------------------------------------------------+
| ファイル(F) 編集(E) 表示(V) 挿入(I) 書式(O) |
+-------------------------------------------------------------+
| | A | B | C | D | E | |
|--- ------- ------- ------- ------- ------- |
| 1 | 1| 6| | | | |
| 2 | 2| 7| | | | |
| 3 | 3| 8| | | | |
| 4 | 4| 9| | | | |
| 5 | 5| 10| | | | |
| 6 | | | | | | |
先ほどと同じことをしているのですが、今度はうまくいってますね。きちんと5行2列に分かれてペーストできています。
entabは小さなプログラムですが、表計算ソフトにデータを転送してグラフを描いたりするときに重宝します。rpnからの出力をentabプログラム経由でクリップボードに吐き出せば、すぐに表計算ソフトにペーストできるのですから。
本講座で使用したプログラムは、カレンダー・システムパッケージとして購入することができます。xypとnpdはrpnの姉妹ソフトウェアです。詳しくはプロダクトを参照ください。