Google Sheets拼接文本复制至第三方软件的格式异常问题求助
解决Google Sheets复制文本到CorelDRAW/Illustrator/AutoCAD的双引号与换行丢失问题
问题根源
Google Sheets复制含换行符的单元格时,会默认以CSV格式处理内容:带换行的文本会被自动包裹双引号,且仅用LF(CHAR(10))作为换行符,而部分Windows桌面软件(如CorelDRAW、AutoCAD)只识别CR+LF(回车+换行)组合,同时会保留CSV格式的双引号。
解决方案
1. 替换换行符为CR+LF(解决换行丢失)
把公式中的CHAR(10)替换为CHAR(13)&CHAR(10),让换行符兼容Windows软件:
- 原CONCATENATE公式:
=CONCATENATE(A1, CHAR(10), A2, CHAR(10), A3) - 修改后:
=CONCATENATE(A1, CHAR(13)&CHAR(10), A2, CHAR(13)&CHAR(10), A3) - 更高效的TEXTJOIN替代写法:
=TEXTJOIN(CHAR(13)&CHAR(10), TRUE, A1:A5)
2. 规避自动添加的双引号
方法A:编辑模式复制(适合少量数据)
选中目标单元格,按F2进入编辑模式,按Ctrl+A全选文本后复制,这样得到的是纯文本,不会包含自动添加的双引号。
方法B:用Google Apps Script批量复制(适合大量数据)
- 打开你的Google Sheets,点击顶部菜单「扩展」→「Apps Script」
- 删除默认代码,粘贴以下脚本:
function copyCleanText() { const activeRange = SpreadsheetApp.getActiveRange(); let textContent = activeRange.getValue(); // 移除首尾的自动双引号 textContent = textContent.replace(/^"|"$/g, ''); // 复制到系统剪贴板 SpreadsheetApp.getUi().setClipboard(textContent); SpreadsheetApp.getUi().alert('已复制干净文本到剪贴板'); } - 点击「保存」,命名项目(比如「CleanCopy」),首次运行会要求授权,按提示完成权限验证
- 返回表格,选中要复制的单元格,点击顶部菜单「扩展」→「Apps Script」→「copyCleanText」运行,即可得到无引号、换行正常的文本
3. 记事本中转优化
如果必须用记事本中转,复制到记事本后,先按Ctrl+H打开替换窗口:
- 查找内容:
"(双引号) - 替换为:留空
- 全部替换后,再复制到目标软件;同时确保记事本的换行符是CR+LF(默认就是,无需修改)
内容的提问来源于stack exchange,提问作者TomJones999
相关产品推荐
相关产品推荐

