下面是我正在運行的代碼,我不太確定是否可以得到我想要的。
但奇怪的是,代碼運行時間太長。
我等了一個小時。
所以我覺得代碼中一定有一些錯誤。
任何人都可以對此有所瞭解嗎?VBA:在找到單元格之前插入一個新行
Set x = Workbooks.Open("C:\Users\Desktop\testing.xlsx")
For Each ws In x.Worksheets
If ws.Name <> "Master" Then
lrow = ws.Cells(Rows.Count, "A").End(xlUp).Row
Set rng = ws.Range(Cells(1, 1), Cells(lrow, 1))
For Each Acell In rng
If (Acell.Value = "Sum") Then
Acell.Offset(-1, 0).EntireRow.Insert
End If
Next Acell
End If
Next ws
我正在尋找在柱A說:「總」字,除了爲「主」片在工作簿每個表。
「總和」單詞是否會在一列中出現多次? – Hank
刪除或插入行時(尤其是在當前行之前),應該始終按照相反的順序從最後一行到第一行。 –
你應該在你的工作表中指定** always EVERY **'Cells','Rows','Range'等等(你沒有)像'ws.Cells','ws.Rows','ws.Range '。 **不要使用他們沒有資格的工作表。**如果您不符合工作表的條件,那麼Excel總是假定您的意思是「ActiveSheet」(而這大部分都是錯誤的)。閱讀[VBA最佳實踐:永不假設工作表](https://stackoverflow.com/documentation/excel-vba/1107/vba-best-practices/9218/never-assume-the-worksheet)以獲得更好的理解。 –