如何将EXCEL中的多行信息按行提取至多个txt文件中

liweiandy8712 2018-03-23 09:03:53
如下所示的EXCEL表格中,怎么将从第2行开始的每行信息以A列单元格为文件名另存为TXT文件。
例如,将第2行另存为以“111”为文件名的TXT,TXT打开后显示为:111 d ddd
代码 特性1 特性2
111 d dd
222 e ee
333 f ff
444 g gg
555 h hh
666 i ii


...全文
1858 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
舉杯邀明月 2018-03-24
  • 打赏
  • 举报
回复
上面第22行代码,不小心少输入了 .Value ,应为: Print #1, Sheet1.Cells(i, 3).Value 不过,也可以省略.Value ,试了一下,默认属性应该是跟 .Value 属性值相同。
舉杯邀明月 2018-03-24
  • 打赏
  • 举报
回复
写段简单的 Excel VBA 代码,供参考。 打开Excel(打开文档)、再打开VBE,插入一个“标准模块”,添加如下代码:
Option Explicit

Public Sub Main()
   Dim strPath As String
   Dim strTemp As String
   Dim i As Long

   strTemp = InputBox("请输入保存txt文件的路径:", "文件路径")
   If ("" = strTemp) Then
      Call MsgBox("没有指定输出路径,终止操作。", 64&, "提示信息")
      Exit Sub
   End If
   strPath = strTemp & "\"
   i = 2&   ' 数据从第2行开始
   Do
      ' 假设数据在当前工作簿的 Sheet1 中
      strTemp = Trim$(Sheet1.Cells(i, 1).Value)
      If ("" = strTemp) Then Exit Do      ' 空单元格结束
      Open strPath & strTemp & ".txt" For Output As #1
      Print #1, strTemp; vbTab;
      Print #1, Sheet1.Cells(i, 2).Value; vbTab;
      Print #1, Sheet1.Cells(i, 3)
      Close #1
      i = 1& + i
   Loop
   If (2& = i) Then
      Call MsgBox("没有数据输出。", 64&, "提示信息")
   Else
      Call MsgBox("输出操作完成。", 64&, "提示信息")
   End If
End Sub

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧