私は約900のCSVファイルを持っています。これらのファイルはすべてトラッキングソフトウェアからエクスポートされています。残念なことに、このソフトウェアは約52行ほどの要約データを、ヘッダーが多いフレームデータによってフレームの上の行にインポートします。エクセルまたはアクセスの仕様でxlsへのTXTファイルのインポートを自動化
は私が探しているされているような方法で:
1)
2)保存要約データファイル名 "Original_Summary"
3と別のスプレッドシートとしてCSVファイルを開きます。 )元のファイル名をワークシートの新しい名前として別のExcelファイルにフレームデータ(ヘッダを含む)を保存します。
これまでは、〜124個のファイルを手動で作成していましたが、ファイルの数が不足しているため、手動で行うのが最良の選択肢ではありません。
これらのExcelファイルを別々のテーブルとしてAccessにインポートするスクリプトをもう1つ作成しましたが、今はCSVからそれらを転送する方法が必要です。別のファイル。
私はこれを行う方法がありますか?
ありがとうございます!
Sub ImportManyTXTs_test()
Dim strFile As String
Dim foldername As String
Dim ws As Worksheet
strFile = Dir("C:\Users\Jared\Desktop\Processed\Text\*.txt")
Do While strFile <> vbNullString
Set ws = Sheets.Add
With ws.QueryTables.Add(Connection:= _
"TEXT;" & "C:\Users\Jared\Desktop\Processed\Text\" & strFile, Destination:=Range("$A$1"))
.Name = strFile
'.FieldNames = True
'.RowNumbers = False
'.FillAdjacentFormulas = False
'.PreserveFormatting = True
'.RefreshOnFileOpen = False
'.RefreshStyle = xlInsertDeleteCells
'.SavePassword = False
'.SaveData = True
'.AdjustColumnWidth = True
'.RefreshPeriod = 0
'.TextFilePromptOnRefresh = False
'.TextFilePlatform = 437
'.TextFileStartRow = 52
'.TextFileParseType = xlFixedWidth
'.TextFileTextQualifier = xlTextQualifierDoubleQuote
'.TextFileConsecutiveDelimiter = False
'.TextFileTabDelimiter = False
'.TextFileSemicolonDelimiter = False
'.TextFileCommaDelimiter = False
'.TextFileSpaceDelimiter = False
'.TextFileColumnDataTypes = Array(xlYMDFormat, 1, 1)
'.TextFileFixedColumnWidths = Array(22, 13, 13)
'.TextFileTrailingMinusNumbers = True
'.Refresh BackgroundQuery:=False
'.CommandType = 0
'.Name = "T15_070916_B"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 437
.TextFileStartRow = 52
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = True
.TextFileSemicolonDelimiter = False
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh BackgroundQuery:=False
End With
ActiveSheet.Name = strFile
strFile = Dir
Loop
End Sub
私はこれを試してみた、そして唯一の最初の99かそこら、私のすべてのファイルをアップロードしていないようです、それはまた、新しいワークブックに持つというだけで新しいワークシートをインポートしません元の拡張子。何らかの理由で、ファイルを削除してからやり直さなければならない前に1回だけ動作します。奇妙です
私はまだコーディングに新しいので、どんな助けもありがとう!
手動で行う作業のマクロを記録することから始めます。次に、ループを利用してすべてのファイルを開きます。 – PatricK
私はこれを試したときに、プログラムの問題に直面して、ファイルのそれぞれを新しいワークシートとしてワークブックに直接追加しました。ファイル名と拡張子は必要ではありませんでした。ワークシートに元のファイル名を保持した状態で、それぞれに独自のワークブックを作成したいと思っていましたが、その方法はわかりません。 – fishfishingfished