【发布时间】:2021-08-30 17:32:50
【问题描述】:
在我的第 2 列中的工作功能中,我想选择该行并将其复制到同名的工作表中。在我运行代码的所有时间里,都会出现一条消息 1004 错误。
`Sub ventilation()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim LastRow As Integer
Dim dernierelilgne As Integer
Application.ScreenUpdating = False
' faire une boucle pour effacer les feuilles seelctionner'
For j = 1 To 9
Sheets(j).Select
LastRow = Range("A1000000").End(xlUp).Row
For i = LastRow To 6 Step -1
Sheets(j).Select
Selection.Delete Shift:=xlUp
Next i
Sheets("source").Select
derniereligne = Range("A1000000").End(xlUp).Row
'en fonction du mot dans la colonne, envoyer vers la feuille correspondante'
For k = 6 To derniereligne
Sheets("source").Select
If Sheets(j).Name = Cells(k, 2).Value Then
Rows(k).Select
Selection.Copy
Sheets(j).Select
LastRow = Range("A1000000").End(xlUp).Row + 1
Cells(LastRow, 1).Select
ActiveSheet.Paste
End If
Next k
Next j
Sheets("Source").Select
Application.CutCopyMode = False
Application.ScreenUpdating = True
结束子
如果您有解决方案,请!
【问题讨论】:
-
不要Select,也不要依赖implicit references
-
For i = LastRow To 6 Step -1循环应该做什么?也许Sheets(j).Select应该是Rows(i).Select -
'for i= lastrow to 6 step -1' 假设在放置“源”的新引用之前循环清理它的工作表。
标签: excel vba copy row excel-2010