salhi_haithem
XLDnaute Junior
Bonjour a tous
J'aimerai Optimiser Ce Code qui me permet de transférer de données d'une Feuille (base) a une autre
ce code fonctionne parfaitement sans aucun problème sauf qu'il prend beaucoup de temps c'est-a-dire pour transférer 70 lignes de base vers un fichier il prend environ 60 Seconde
je cherche a optimiser
merci d'avance pour votre Aide
J'aimerai Optimiser Ce Code qui me permet de transférer de données d'une Feuille (base) a une autre
ce code fonctionne parfaitement sans aucun problème sauf qu'il prend beaucoup de temps c'est-a-dire pour transférer 70 lignes de base vers un fichier il prend environ 60 Seconde
je cherche a optimiser
merci d'avance pour votre Aide
Code:
Function TransfertVersJournal()
Dim Destination As Worksheet
Dim Source As Worksheet
Set Source = Worksheets("Base")
Set Destination = Worksheets("Journal")
i = 2 'commence à regarder la ligne 2 feuille Source
j = 11 'pour copier dans la feuille Destination a partir de la ligne 11
Source.Select 'sélectionne la feuille 1
Do While Cells(i, 1) <> "" 'la macro s'exécutera tant que dans la cellule de la ligne i et colonne 1 il y aura une valeur
If Cells(i, 1) <> "" Then 'si la cellule de la ligne i colonne 1 différente de null
Destination.Cells(j, 1) = Source.Cells(i, 1) 'N° Action
Destination.Cells(j, 2) = Source.Cells(i, 16) 'Date Enclenchement
Destination.Cells(j, 3) = Source.Cells(i, 19) 'Délais 1
Destination.Cells(j, 4) = Source.Cells(i, 28) 'Délais 2
Destination.Cells(j, 5) = Source.Cells(i, 29) 'Délais 3
Destination.Cells(j, 6) = Source.Cells(i, 30) 'Délais 4
Destination.Cells(j, 7) = Source.Cells(i, 31) 'Délais 5
Destination.Cells(j, 8) = Source.Cells(i, 32) 'T.Estimation
Destination.Cells(j, 9) = Source.Cells(i, 9) 'Action a Faire
Destination.Cells(j, 13) = Source.Cells(i, 26) 'Suivi
Destination.Cells(j, 17) = Source.Cells(i, 25) 'Priorité
Destination.Cells(j, 18) = Source.Cells(i, 27) 'Etat
Destination.Cells(j, 19) = Source.Cells(i, 24) 'T.Total
Destination.Cells(j, 20) = Source.Cells(i, 34) 'Compteur
Destination.Cells(j, 21) = Source.Cells(i, 10) 'Responsable
Destination.Cells(j, 22) = Source.Cells(i, 3) 'Service
j = j + 1
End If 'fin du if
i = i + 1
Loop 'retourne au do while
Destination.Select
End Function
Dernière édition: