superbog
XLDnaute Occasionnel
Bonjour,
J'ai relu ma macro dans tous les sens, je ne comprends pas, je pense avoir correctement incrémenté donc quelqu'un pourrait il m'aider et me dire ou est l'erreur?
merci d'avance
J'ai relu ma macro dans tous les sens, je ne comprends pas, je pense avoir correctement incrémenté donc quelqu'un pourrait il m'aider et me dire ou est l'erreur?
Code:
Sub forf()
Dim i, DerLigBase, lig As Integer
Dim dossier, sNomFeuille As String
Dim colFeuille As Collection
Dim rCelA As Range
Dim shAct As Worksheet
Dim FeuilleExist As Boolean
'Recherche de la dernière ligne
DerLigBase = Sheets("forf").Range("B999").End(xlUp).Row
Set colFeuille = New Collection
On Error Resume Next
'Boucle sur la plage de cellule
For Each rCelA In Sheets("forf").Range("B2:B" & DerLigBase)
colFeuille.Add rCelA, CStr(rCelA)
Next rCelA
'Recherche de la ligne et tri dans chaque feuille
For i = 2 To DerLigBase
dossier = Cells(i, 2).Text
If Sheets("forf").Cells(i, "E") = "forfait" Then GoTo 100
lig = Sheets(dossier).Range("J999").End(xlUp).Row
'Copie les valeurs si non barrées
With Sheets("forf").Cells(i, "c").Resize(, 4)
If IsEmpty(.Cells(-1)) Then 'colonne A vide
Err = 0 'pour savoir si une erreur se produit
Worksheets(dossier).Cells(lig + 1, "J").Resize(, 4) = .Value
Worksheets(dossier).Cells(lig + 1, "O") = Sheets("forf").Cells(i, "C")
Worksheets(dossier).Cells(lig + 1, "P") = Sheets("forf").Cells(i, "D")
Worksheets(dossier).Cells(lig + 1, "R") = "droits"
Worksheets(dossier).Cells(lig + 1, "T") = "13"
End If
GoTo 200
100
lig = Sheets(dossier).Range("AV999").End(xlUp).Row
'Copie les valeurs si non barrées
With Sheets("forf").Cells(i, "c").Resize(, 4)
If IsEmpty(.Cells(-1)) Then 'colonne A vide
Err = 0 'pour savoir si une erreur se produit
Worksheets(dossier).Cells(lig + 1, "AV").Resize(, 4) = .Value
End If
200
If Err = 0 Then .Cells(-1) = "X"
End With
Next i
End Sub
merci d'avance