不确定你是要"删除"整行还是只要"清除"内容? "某一列"指的是横行还是纵列? 下例包含两种方法, 自己看看哪种合适罗。Sub eraseSingleLine() '去除目录下所有XLS档案内所有Sheet中指定"横行" Dim exPath As String, exFile As String, sht As Worksheet, iRow As Long
iRow = 4 '指定删除行号 exPath = "C:\temp\" '指定路径 exFile = Dir(exPath & "*.xls") '找寻第一个档案 Do While exFile <> "" '执行回圈,无档案离开 Workbooks.Open exPath & exFile '开启XLS档案 For Each sht In ActiveWorkbook.Sheets sht.Rows(iRow).Delete '移除整横行 ' sht.Rows(iRow).Clear '清除整横行内容 Next 'sht' ActiveWorkbook.Save '储存变更(建议先Mark起来看看效果) ActiveWorkbook.Close '关闭档案 exFile = Dir '寻找下一个档案 Loop End Sub
"某一列"指的是横行还是纵列?
下例包含两种方法,
自己看看哪种合适罗。Sub eraseSingleLine() '去除目录下所有XLS档案内所有Sheet中指定"横行"
Dim exPath As String, exFile As String, sht As Worksheet, iRow As Long
iRow = 4 '指定删除行号
exPath = "C:\temp\" '指定路径 exFile = Dir(exPath & "*.xls") '找寻第一个档案
Do While exFile <> "" '执行回圈,无档案离开
Workbooks.Open exPath & exFile '开启XLS档案 For Each sht In ActiveWorkbook.Sheets
sht.Rows(iRow).Delete '移除整横行
' sht.Rows(iRow).Clear '清除整横行内容
Next 'sht' ActiveWorkbook.Save '储存变更(建议先Mark起来看看效果)
ActiveWorkbook.Close '关闭档案
exFile = Dir '寻找下一个档案
Loop
End Sub
如果要删除纵列,
那就将下列语句中"Rows"部分
sht.Rows(iRow).Delete
改为"Columns":
sht.Columns(iRow)....
就可以删除指定纵列了。
虽然以Columns对应iRow看起来怪怪底...
这个范例中如果单单批次删除自订资料夹中所有excel檔的某栏某列中的文字前码 具体该如何实现?例:
删除5列 7行 储存格中的123456789T1M11111 T以前的数字全消除