VBS操作Word插入TXT文件自动选纯文本无对应转换格式问题
VBS操作Word插入TXT跳过转换弹窗解决方案
- 首先确认:纯文本属于Word内置支持格式,不会出现在
FileConverters遍历结果中,无需查找对应的转换器项。 - 方案1:直接修改InsertFile调用参数,关闭转换确认
补充ConfirmConversions:=False参数即可跳过弹窗自动完成纯文本识别,修改后代码如下:Selection.InsertFile FileName:="Z:\001\B.TXT", ConfirmConversions:=False
若执行后仍有乱码,说明TXT文件编码与系统默认纯文本编码不匹配,可使用方案2解决。 - 方案2:指定编码打开TXT后插入内容(彻底规避乱码)
如需固定编码(如GB2312、UTF-8)导入文件,可先后台打开TXT指定编码,再将内容复制到目标位置,示例代码如下:
' 若为VBS后期绑定场景,提前替换常量:wdDoNotSaveChanges = 0 Dim rngTarget, docTmp ' 记录当前插入点位置 Set rngTarget = Selection.Range ' 打开TXT文件指定编码:936=GB2312(简体中文)、65001=UTF-8、1200=Unicode Set docTmp = Documents.Open(FileName:="Z:\001\B.TXT", Encoding:=936, Visible:=False) ' 复制内容到目标位置 docTmp.Content.Copy rngTarget.Paste ' 关闭临时文档不保存 docTmp.Close SaveChanges:=wdDoNotSaveChanges
内容的提问来源于stack exchange,提问作者sys7em
相关产品推荐
相关产品推荐

