文字列のセル配列がある場合、それをクリップボードにコピーして Excel スプレッドシートに貼り付けるにはどうすればよいですか (各文字列は個別のセルに入れられます)。のように 1 つの要素を貼り付けることができることはわかってclipboard('copy', x{1})
いますが、のコンテンツ全体をすばやく貼り付けるにはどうすればよいx
ですか?
3880 次
2 に答える
5
答え
秘訣は、データをタブで区切ることです。タブで列を区切り、改行で行を区切ります。
以下のこのコードは、(各行の文字列 concat を削除することによって) 効率を上げるために書き直すことができますが、おわかりいただけたでしょうか。巨大なデータセットの場合、dlmwrite()
メモリの制限を回避するために を使用することをお勧めします。
例
function fancyClipboard(myCell)
if ~iscell(myCell), error('Input must be a cell'); end
if ndims(myCell) > 2, error('Only 1D & 2D cells supported.'); end
str = [];
newline = sprintf('\n');
for i = 1:size(myCell, 1);
row = sprintf('%s\t', myCell{i,:});
row(end) = newline;
str = [str row]; %#ok<AGROW>
end
clipboard('copy',str);
end
于 2012-12-17T23:36:51.960 に答える
0
自動化を台無しにしたくない場合の非常に簡単な方法:
- ワークスペースで変数をダブルクリックします。
Variables
ウィンドウで左上のボックスをクリックして、セル配列全体を選択します。- 右クリック→コピー。好きなところに貼り付け!
Libre Office を使用した Linux の R2012b でこれをテストしました。Excelでも動作するはずです。
于 2012-12-18T06:45:59.337 に答える