如果我有一个字符串单元格数组,将其复制到剪贴板以便我可以将其粘贴到 Excel 电子表格中的最佳方法是什么(每个字符串都进入一个单独的单元格)?我知道我可以像这样粘贴一个元素: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
窗口中单击左上角的框以选择整个单元阵列。 - 右键单击-> 复制。粘贴到任何你喜欢的地方!
我已经在 Linux 中使用 R2012b 和 Libre Office 对此进行了测试。它也应该适用于 Excel。
于 2012-12-18T06:45:59.337 回答