Excel使用VBA程序导出内容到记事本

2025-10-13 10:08:06

1、打开Excel表格,按下【Alt+F11】组合键调出VBE编辑器。

Excel使用VBA程序导出内容到记事本

2、在VBE编辑器的菜单栏上面点击【插入】、【模块】。

Excel使用VBA程序导出内容到记事本

3、在模块的代码框里边输入以下VBA程序代码。

Sub ExTxt()

Dim Fso, Fil, i1, i2, i3, i4, i5, Str, Txt

On Error Resume Next '忽略运行过程中可能出现的错误

Set mysheet1 = ThisWorkbook.Worksheets("Sheet1") '定义工作表Sheet1

myPath1 = "D:\AAAA\"        '文件夹路径

myPath2 = myPath1 & "古诗词.txt"  '输出txt文本路径

MkDir myPath1                '新建文件夹

Set Fso = CreateObject("Scripting.FileSystemObject") '访问系统文件

Set Fil = Fso.OpenTextFile(myPath2, 8, 1) '打开文本文件

For i2 = 2 To 3000 '从第2行到3000行

 If mysheet1.Cells(i2, 2) <> "" Then '如果B列单元格不是空白,则

  i4 = 0

  Str = ""

  Do

   i3 = i4

   i4 = InStr(i3 + 1, mysheet1.Cells(i2, 2), Chr(10))  '判断换行符所在的位置

   Str = Mid(mysheet1.Cells(i2, 2), i3 + 1, i4 - i3 - 1) '截取每一行的字符

   If i4 = 0 Then '如果不存在换行符,则

    Str = Mid(mysheet1.Cells(i2, 2), i3 + 1, Len(mysheet1.Cells(i2, 2)) - 3)

    '截取最后一行的字符

    Fil.Write Str '将字符写入文本

    Fil.WriteBlankLines (2) '换2行

    Exit Do

   End If

   Fil.Write Str '写入文本

   Fil.WriteBlankLines (1) '换1行

  Loop

 End If

Next

Fil.Close '关闭文本文档

Set Fso = Nothing

Set Fil = Nothing

End Sub

Excel使用VBA程序导出内容到记事本

4、检查无误后,在VBE编辑器的功能区里边点击“运行”图标运行程序,或者按下【F5】键运行程序。

Excel使用VBA程序导出内容到记事本

5、打开文本文档输出的路径(如:D:\AAAA\古诗词.txt)。

Excel使用VBA程序导出内容到记事本

6、Excel里边的内容输出完成。

Excel使用VBA程序导出内容到记事本

1、VBA程序总结:

1、常言道:条条大道通罗马,在没有想到其他更好的方法之前,使用其他程序语句处理问题总比手工强一些。

2、OpenTextFile语法:OpenTextFile(打开的文件,只读(1)/打开并写到文件尾部(8),文件不存在时是否创建,打开文件的格式)。

3、WriteBlankLines语法:WriteBlankLines(换几行)。

4、由于单元格里边含有换行符,直接写入文本文档的话,单元格里面的内容就会连接到一起,因此,借助Instr函数逐一判断换行符所在的位置,再写入到文本文档里边,才能与单元格的换行一致。

Excel使用VBA程序导出内容到记事本

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢