如何将excel的每一行内容都转化成一个txt文件(vba方法&python方法)

本文对比了使用VBA与Python从Excel批量导出TXT文件的方法。VBA方式简单但文件较大且格式为ANSI,而Python则能高效生成小体积UTF-8格式TXT文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

快捷键 Alt + F11 打开宏

 

Private Sub CommandButton1_Click()

mypath = "E:\test\"
num = 160 ' 行数
lies = 1 ' 列数
jiange = " " ' 列间隔符,自己定
For i = 1 To num
For j = 1 To lies
temp = Trim(Worksheets(1).Cells(i, j).Value) + jiange + temp
Next j
outfile = mypath + CStr(i) + ".txt"
Open outfile For Output As #1 ' 打开输出文件。
Print #1, temp
Close #1 ' 关闭文件。
Next i

 

End Sub

 

缺点:

1.用vba的方法得到的txt文件是ANSI格式的,后面要使用这些txt文件的话,可能要转化utf-8形式的,所以有点麻烦;

2.这种方式得到的txt文件很大,文件一多,后面处理严重收到影响。

 

所以用了python来处理

import os
import xlrd
os.chdir(r"C:\Users\Desktop\shiji\news_data\2013")

def read():
    file_path = 'no_data2.xlsx'

    data = xlrd.open_workbook(file_path)

    table = data.sheet_by_name('Sheet1')

    nrows = table.nrows


    for i in range(0, nrows):
        file = open('./no_data2/no_data20803_' + str(i) + '.txt', 'wb+')
        file.write(str(table.cell(i, 0).value).encode(encoding='utf-8'))     
        file.close()
    return 'done.'

read()

 用python 处理的优点:出来txt文件很小,很多txt文件都不成问题,且出来的txt文件是utf-8.

 

转载于:https://www.cnblogs.com/lxh1208891835/p/9492177.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值