用vba附加文本文件

时间:2014-01-25 06:04:01

标签: excel excel-vba vba

我正在尝试实现一个简单的目标,将excel文件的行计数和列计数摘要插入到现有的记事本中。

我在一个文件夹中有多个文件,并希望为每个文件运行此操作,并将详细信息发送到记事本。

问题:每次运行代码时,它都会删除现有内容并将新数据插入记事本中。我想保留现有数据并开始追加新行

代码:

  Sub Sndtotxt()
  Dim FF
  Dim rCnt AS INTEGER
  Dim cCnt AS INTEGER

  rCnt = ActiveSheet.UsedRange.Rows.Count
  cCnt = ActiveSheet.UsedRange.Columns.Count

  FF = FreeFile()
  OPEN "C:\Temp files\summaryreport.txt" FOR Output AS #FF
  Print #FF, rCnt
  Print #FF, cCnt

  CLOSE #FF
  END Sub

1 个答案:

答案 0 :(得分:1)

替换

OPEN "C:\Temp files\summaryreport.txt" FOR Output AS #FF

OPEN "C:\Temp files\summaryreport.txt" FOR Append AS #FF

在循环浏览文件夹中的文件方面,建议您从Loop through files in a folder using VBA?

的代码开始

更改以下路径

  • Excel文件C:\temp\
  • Txt报告C:\Temp\test.txt

适合

  Sub GetEm()
  Dim WB As Workbook
  Dim StrFile As String
  Dim FF

  FF = FreeFile()
  Open "C:\Temp\test.txt" For Append As #FF

  StrFile = Dir("c:\temp\*.xls*")
  Do While Len(StrFile) > 0
  Set WB = Workbooks.Open("c:\temp\" & StrFile)
        StrFile = Dir
        Print #FF, WB.Name, WB.Sheets(1).UsedRange.Rows.Count, WB.Sheets(1).UsedRange.Columns.Count
        WB.Close
  Loop
  Close #FF
  End Sub