原因は、貼り付けようとしているテキストにNUL文字(16進数の文字コードでx00)が含まれているからです。
NUL文字が含まれていると、そこで貼りつけが終了してしまいます。
(なお、メモ帳への貼り付け、サクラエディタへの貼り付け等でも同じようにNUL文字の箇所で切れます)
NUL文字をスペース(x20)に置換して問題ないのであれば、予めNUL文字をスペースに置換してからコピーすることで、この問題を解決できます。
詳しい手順は以下の通りです。
- 貼りつけようとしているテキストをファイルに出力する
初めからファイル形式なのであれば問題ないのですが、問題なのはDBのレコード等、ファイル形式になっていない場合です。
DBのレコードであれば、CSV等の形式でエクスポートする必要があります。
エクスポートの方法はRDBMSによって異なるので、別途調べてください。
なお、Oracle SQL Developer等のGUI操作ができるツールを使用しているのであれば、ツール上で探せばエクスポート用の機能が見つかると思います。
- 16進数の置換ができるエディタでファイルを開いて置換する
1で出力したファイルを、エディタで開き、NUL文字(x00)をスペース(x20)に置換します。
置換の方法は以下の通りです。
・サクラエディタの場合
以下のように指定して置換すれば良いです。
置換前:\x{00}
置換後:
・秀丸の場合
開いた瞬間に自動的にNUL文字がスペースに置換されます。
・Stirlingの場合
置換機能で、16進データを選択し、以下の指定をすれば良いです。
置換前:00
置換後:20
- 置換後のテキストをコピーし、Excelに張り付ける
これで途切れずに貼りつけができるはずです。