RStudio控制台输出无法直接粘贴到Excel的问题该如何解决?
故障原因
- RStudio更新后修改了剪贴板输出的默认格式,控制台内容复制时会携带隐藏的富文本/HTML格式元数据,Excel默认粘贴时优先识别了不兼容的格式标识,直接过滤了有效文本内容,所以粘贴后显示为空
- 记事本会自动剥离所有富格式元数据,仅保留纯文本内容,因此先粘贴到记事本再复制到Excel可以正常识别
- 也可能是RStudio的默认文本编码和Excel的编码识别规则不匹配,或者Excel的默认粘贴规则被修改,自动过滤了非标准表格格式的内容

解决方法
临时快捷方案
- 粘贴到Excel时右键点击目标单元格,选择选择性粘贴,在弹出窗口中选中「文本」选项后确认即可正常粘贴
- 也可以使用快捷键
Ctrl + Alt + V直接唤出选择性粘贴窗口,选中「文本」后回车确认
RStudio端永久修复
- 打开RStudio的
Tools → Global Options → Code → Saving设置面板 - 将「Default text encoding」修改为和Excel匹配的编码,国内用户通常修改为GBK或UTF-8即可
- 若你需要复制的是结构化表格内容,可以直接通过代码输出到剪贴板,运行命令:
write.table(你要输出的数据集名称, "clipboard", sep = "\t", row.names = FALSE)
运行后直接到Excel粘贴即可得到格式化的表格内容
Excel端永久修复
- 打开Excel的
文件 → 选项 → 高级设置页,找到「剪切、复制和粘贴」板块 - 取消勾选「使用智能剪切和粘贴」选项,保存设置后重启Excel即可生效
内容的提问来源于stack exchange,提问作者Sisi
相关产品推荐
相关产品推荐

