我有一个包含 50 个文本文件的文件夹,我需要一个可以读取这些文本文件并将它们转换为表格的 C# 或 .NET 程序,我希望主键是文本文件本身的名称。
//sample contents of my 1.txt file is as follows
atro
astrology
king
moon
monkey
seven
skin //
所有文本文件都包含相同格式的信息。我编写了一个可以读取上述数据格式的文本文件的宏,然后当我尝试在 Excel 中运行宏时,我收到一条错误消息,指出内存不足。
enter code here
Sub rameshc() ' ' ramesh Macro ' ' 键盘快捷键:Ctrl+k ' Dim nxt_row As Long
'Change Path
Const strPath As String = "C:\Users\roo\Desktop\Volumes\eGo\tags\0\"
Dim strExtension As String
'Stop Screen Flickering
Application.ScreenUpdating = False
ChDir strPath
'Change extension
strExtension = Dir(strPath & "*.txt")
Do While strExtension <> ""
'Adds File Name as title on next row
Range("A65536").End(xlUp).Offset(1, 0).Value = strExtension
'Sets Row Number for Data to Begin
nxt_row = Range("A65536").End(xlUp).Offset(1, 0).Row
'Below is from a recorded macro importing a text file
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & strPath & strExtension, Destination:=Range("$A$" & nxt_row))
.Name = strExtension
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
'Delimiter Settings:
.TextFileConsecutiveDelimiter = True
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = True
.TextFileSpaceDelimiter = True
.TextFileOtherDelimiter = "="
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
strExtension = Dir
Loop
Application.ScreenUpdating = True
End Sub Sub ramesh() ' ' ramesh Macro ' ' 键盘快捷键:Ctrl+l ' Selection.Copy ActiveCell.Offset(0, 1).Range("A1").Select Selection.PasteSpecial Paste:=xlPasteAll, Operation:= xlNone, SkipBlanks:= _ False, Transpose:=True End Sub