私のデスクトップには、csv
のファイルを多用するフォルダがあります。これらのファイルには1枚の「シート」しかありませんが、シート名は異なります。唯一の類似点は、「タンカード」という単語で始まることです。VBA:異なる名前のファイルを持つ特定のフォルダ内の列 "A"を削除する方法
この1枚のシートでは、すべての2000ファイルに対して、Column A
を削除して保存するだけです。私の2ヶ月目は、仕事でのVBAの自動化を探るだけです。誰かが私を助けることができるなら、私は感謝します。前もって感謝します。
スクリプト:
Sub Tank()
Dim wb As Workbook
Dim myPath As String
Dim myfile As String
Dim myExtension As String
Dim SheetName As String
'Optimize Macro Speed
Application.ScreenUpdating = False
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
SheetName = "Tankard*"
myPath = "\\ph00winfdfs01p\shares\JoeyC\documents\Roaming\Windows\Desktop\Tank\"
If myPath = "" Then GoTo ResetSettings
'Target File Extension (must include wildcard "*")
myExtension = "Tankard*.csv"
'Target Path with Ending Extention
myfile = Dir(myPath & myExtension)
'Loop through each Excel file in folder
For i = 1 To 201
Set wb = Workbooks.Open(Filename:=myPath & myfile)
';;;;;;;;;;;;;;WRITE YOUR CODE HERE
Sheets("SheetName").Select
Columns("A").Select
Selection.Delete
wb.Close SaveChanges:=True
Next i
'Get next file name
myfile = Dir
'Message Box when tasks are completed
MsgBox "Task Complete!"
ResetSettings:
'Reset Macro Optimization Settings
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub
csvファイルを開くときにシート名がファイル名(拡張子なし)にならないのですか? (私はCSVファイルの経験はありませんが、それは私のためにしたものです) – arcadeprecinct
あなたの入力をありがとう。私の問題は解決されました! –