Excel 如何以第一列为文件名,第二列为内容自动导出为TXT文件,且内容按行换行。 100

网上找到的最接近理想的代码,但是导入的数据无法自动换行,求大神修改一下Subdaochu()OnErrorResumeNextDimfsoAsObjectDimMyTxt... 网上找到的最接近理想的代码,但是导入的数据无法自动换行,求大神修改一下
Sub daochu()
On Error Resume NextDim fso As ObjectDim MyTxt As ObjectDim MyFName As String Set fso = CreateObject("Scripting.FileSystemObject") With ActiveSheet Dim i%For i = 2 To 10 MyFName = ThisWorkbook.Path & "\" & Cells(i, 1) & ".txt"Set MyTxt = fso.CreateTextFile(Filename:=MyFName, OverWrite:=True)If Cells(i, 1) <> "" ThenMyTxt.Write .Cells(i, 2)End IfNext MyTxt.CloseEnd WithSet MyTxt = NothingSet fso = NothingEnd Sub
展开
 我来答
wyzxcjz1
2017-03-26 · TA获得超过5355个赞
知道大有可为答主
回答量:1514
采纳率:100%
帮助的人:299万
展开全部
Excel 如何以第一列为文件名,第二列为内容自动导出为TXT文件,且内容按行换行。用VBA来实现。代码如下,实我已经实验成功,起抛砖引玉之作用。
Sub 读写文件()
Dim AA As String
For I = 2 To 10 '假设有10行,就不测定行数了。从第二行起才是要写的文件及内容
 Filename = Worksheets("SHEET1").Cells(I, 1) '读取二行一列内容:即文件名
 AA = Worksheets("SHEET1").Cells(I, 2)  '读取二行二列内容:即文件内容
FileCopy "D:\1.txt ", "D:\" & Filename & ".txt"  '事先在D:\下建立一个1.TXT文件
 FNAME = "D:\" & Filename & ".TXT"
 Open FNAME For Append As #1
 Print #1, AA
Close #1
Next I
End Sub

代码图:

EXCEL图:

运行结果图:

追问
不行,它只取一行的值生成txt文件,第一列多行重名并不能将第二列内容归档。。
朋越亦9004
2017-03-26 · TA获得超过487个赞
知道小有建树答主
回答量:495
采纳率:100%
帮助的人:173万
展开全部
不知你曾经利用EXCEL做通讯录导到手机上使用的事没有,我做过,先用EXCEL做一个所有人的通讯录,第一列是名称,然后选择另存为CSV格式,然后,你在开始菜单找附件,再找到通讯录,打开后,选择导入,选择其他通讯录,打开刚才你存的SCV文件,你会发现会变成一个一个人的通讯录,在全部选中,右键选复制,再找一个空文件夹,再粘上,你就会发现原先是一个文件,而变许多人的名片,一行数据一个名片,而且名片名称就是各人的姓名
后面的我不说了,我告诉你这个过程就是让你利用这个过程,正好达到你那个目的,把每行变成了一个单独的文件,且是以第一行的姓名作文件名称,只是这个文件是VAR名片格式,且文件内容可能会比你要的多些,但你要的文件内容肯定在里面,面且这个格式是可以用TXT文件打开的,因此,你试试看
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式