【发布时间】:2016-09-28 03:56:12
【问题描述】:
我的桌面中有一个文件夹,其中包含或多或少 2000 个 csv 文件。这些文件只有 1 个“工作表”,但工作表名称会有所不同。唯一相似的是它以“Tankard”这个词开头。
在那张纸上,我只需要删除 Column A 并保存它,用于所有 2000 个文件。这是我在工作中探索 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 文件和 excel 的经验,但这就是它为我所做的)
-
感谢您的意见。我的问题解决了!