Probleme de Range erreur 1004 !!! VB Excel

Résolu
Bonjour,
J'ai un code qui bloque, maisje ne sais pas pourquoi
C'est juste une recopie d'une plage vers une autre



'Déclaration des variable
Destination = 2
FinBas = Worksheets("Parts").Range("A65536").End(xlUp).Row

'Recopiage des résultats dans la feuille de résultats
For i = 1 To FinBas
If Worksheets("Parts").Range(Cells(i, FinDroite + 2), Cells(i, FinDroite + 2)).Value = "Doublon" Then
Worksheets("ResultatTri").Range(Cells(Destination, 1), Cells(Destination, FinDroite)) = Worksheets("Parts").Range(Cells(i, 1), Cells(i, FinDroite))
If Worksheets("Parts").Range("AH" & i).Value = Worksheets("Parts").Range("AH" & i + 1).Value Then
Destination = Destination + 1
Else
Destination = Destination + 2
End If
End If

Next i


Je comprend pas parce que la propriété range fonctionne avec des lettres dedans
Je remercie par avance quiconque m'aide

Cordialement Kamoul

5 réponses

  1. Contributeur
    Bonjour,

    ton souci vient de la feuille active: comme tu en utilises 2...

    maquette "vite fait":
    Sub nnnn()
    Destination = 2
    Findroite = 4
    i = 1
    With Sheets(1)
         tablo = .Range(.Cells(Destination, 1), .Cells(Destination, Findroite)).Value
    End With
    With Sheets(2)
        .Range(.Cells(i, 1), .Cells(i, Findroite)) = tablo
    End With
    End Sub


    comme tu boucles sur n lignes

    écris cette ligne en début de macro
    Application.ScreenUpdating = False

    qui fige le défilement de l'écran et te fait gagner un temps

    Enfin, les select-selection, copy-paste sont à éviter au maximum dans une procédure: ocupation mémoire, temps de procédure très longue
    2