前言:
此时小伙伴们对“vba读取二进制文件写入excel”大概比较看重,大家都想要学习一些“vba读取二进制文件写入excel”的相关内容。那么小编也在网摘上收集了一些对于“vba读取二进制文件写入excel””的相关知识,希望你们能喜欢,咱们快快来学习一下吧!文本文件提供了一种在不同类型的计算机之间交换信息的方法。
1 写入文本文件
使用Write语句或Print语句向文本文件中写入数据。
Write语句产生一行由逗号分隔的值,并在日期的两端放上井号(#),在字符串两端放上双引号(")。
Print语句产生适合打印的一行,用空格将各列数据分隔开来(相对于Write,不使用#和",使用空格分隔)。
如在工作表中有如下数据:
使用wirte语句来将Excel的数据写入文本文件中:
运行后的文本文件为:
2 读取文本文件
使用Input语句或Line Input语句读取文本文件。
Input语句认为数据如Write语句产生的那样并读取数据到变量列表中。
Line Input语句则将整行数据作为单个字符串读取到单个变量中。
附代码:
Sub writeFile()
Dim dDate As Date
Dim sCustomer As String
Dim sProduct As String
Dim dPrice As Double
Dim sFName As String
Dim iFNumber As Integer '文件号
Dim lRow As Long
sFName = "F:\wwuhn\excel2007VBA参考大全\JanSales.txt"
'获得一个未用的文件号
iFNumber = FreeFile
'创建新文件或覆盖现有文件
Open sFName For Output As #iFNumber
lRow = 2
Do
'从工作表中读取数据
With Sheets(2)
dDate = .Cells(lRow, 1)
sCustomer = .Cells(lRow, 2)
sProduct = .Cells(lRow, 4)
dPrice = .Cells(lRow, 6)
End With
'向文件写入数据
Write #iFNumber, dDate, sCustomer, sProduct, dPrice
lRow = lRow + 1 '定位工作表的下一行
'循环到空单元格为止
Loop Until IsEmpty(Sheets(2).Cells(lRow, 1))
Close #iFNumber
End Sub
Sub readFile()
Dim dDate As Date
Dim sCustomer As String
Dim sProduct As String
Dim dPrice As Double
Dim sFName As String
Dim iFNumber As Integer
Dim lRow As Long
sFName = "F:\wwuhn\excel2007VBA参考大全\JanSales.txt"
'Sheets(3).Cells.Clear
iFNumber = FreeFile
Open sFName For Input As #iFNumber
lRow = 2
Do
Input #iFNumber, dDate, sCustomer, sProduct, dPrice
With Sheets("sheet1")
.Cells(lRow, 1) = dDate
.Cells(lRow, 2) = sCustomer
.Cells(lRow, 3) = sProduct
.Cells(lRow, 4) = dPrice
End With
lRow = lRow + 1
'一直循环到文件末尾
Loop Until EOF(iFNumber)
Close #iFNumber
End Sub
-End-
标签: #vba读取二进制文件写入excel #如何用vba读取文件数据 #vba 输出文本 #vba 输出文本文件 #vba读取excel文件内容并写到新的excel文件