首页 > 好文分享 > 技术教程内容详情
久久优惠网

用VBA把Excel每一行数据导出为一个txt文本

2021-02-10 17:21:30 技术教程

excel中需要把每一行数据都导出为一个txt文本的时候,一行一行复制出来很简单,但是遇到特别多数据的时候,怎么可能一个一个复制出来呢?这个时候就需要借助excel的VBA。

 

一、首先用快捷键Alt+F11,打开VBA。

二、然后在左上的那个窗口里面找到导出的表格,左键双击输入指令。

三、输入的指令为:

Sub txt()  

Dim i, j, arr(), brr(), myRow, myCol  

arr = Sheet1.UsedRange   

myRow = UBound(arr, 1)  

myCol = UBound(arr, 2)   

For i = 1 To myRow    

Open ThisWorkbook.Path & "\" & arr(i, 1) & "1.txt" For Output As #1 

Print #1, Join(Application.Index(arr, 1), ",")  

Print #1, Join(Application.Index(arr, i), ",") 

Close #1  

Next  

End Sub  

这个指令具体是什么意思是需要系统学习VBA的,非专业人员只需要复制就ok了。

指令注释:

Sub 导出每行为txt()
Dim i, j, arr(), brr(), myRow, myCol
arr = Sheet1.UsedRange   '将工作表的内容放入arr数组中
myRow = UBound(arr, 1)   '计算出数组的行数
myCol = UBound(arr, 2)   '计算出数组的列数
For i = 1 To myRow       '从第2行开始循环
Open ThisWorkbook.Path & "" & arr(i, 1) & "1.txt" For Output As #1 '打开一个以第一列数据命名的txt
Print #1, Join(Application.Index(arr, 1), ",")   '输出表头
Print #1, Join(Application.Index(arr, i), ",")   '输出内容
Close #1              '关闭
Next                     '循环
End Sub

 

四、最后点击运行就可以了,输出的txt会保存在excel的目录里面,完成。

相关标签: Excel数据导出 VBA导出txt文本

发布评论