【发布时间】:2012-03-15 08:45:00
【问题描述】:
有什么方法可以将不同的多个 .txt 文件的全部内容(实际上是一个文件夹中所有 .txt 文件的内容)放入 Excel 2010?我需要一个单元格 (A1) 作为文件名,另一个单元格 (A2) 作为该 .txt 文件的全部内容。其他 .txt 文件也是如此,即 B1-B2、C1-C2 等。
我有这个代码:
Sub test()
Dim myDir As String, fn As String, ff As Integer, txt As String
Dim delim As String, n As Long, b(), flg As Boolean, x
myDir = "c:\test" '<- change to actual folder path
delim = vbTab '<- delimiter (assuming Tab delimited)
Redim b(1 To Rows.Count, 1 To 1)
fn = Dir(myDir & "\*.txt")
Do While fn <> ""
ff = FreeFile
Open myDir & "\" & fn For Input As #ff
Do While Not EOF(ff)
Line Input #ff, txt
x = Split(txt, delim)
If Not flg Then
n = n + 1 : b(n,1) = fn
End If
If UBound(x) > 0 Then
n = n + 1
b(n,1) = x(1)
End If
flg = True
Loop
Close #ff
flg = False
fn = Dir()
Loop
ThisWorkbook.Sheets(1).Range("a1").Resize(n).Value = b
End Sub
但是这段代码的问题是它只导入文件名,而不是内容,我想这是由于上面的代码使用“delim = vbTab”而我没有任何分隔符文件的内容。我希望将一个文件的全部内容导入到一个单元格中。
【问题讨论】:
-
你第二次问同样的问题 (stackoverflow.com/questions/9402347/…) 并且代码是从另一个论坛复制的。您需要的是聘请(vba)程序员,或者如果您想成为自己的程序员,请在询问之前多花点精力。
-
我知道,但我已经找到了另一个更容易使用的代码,我只需要一点帮助来修改它。所以我不明白我为什么要雇佣一个 VBA 程序员,为了这样一个简单的修复,这些家伙让它发生了......现在代码正在正常工作,我非常感谢这些人的帮助.