Programme trop lent (nb de lignes important)
elima87
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai un soucis concernant la lenteur d'un programme que j'ai écrit. J'ai conscience qu'il n'est pas optimal. J'aimerais que dans une colonne j'ai toutes les dates de la plus ancienne à aujourd'hui et que dans les autres colonnes, il y ait, les valeurs des indices et des taux correspondant à ces mêmes dates (car sur le marché américain et sur le marché français les jours fériés ne sont pas les mêmes).
Voilà ce que j'ai commencé à écrire:
Sub alignerrésultats()
For i = 2 To 3000
For j = 2 To 2600
If Worksheets("essai vba").Cells(i, 1).Value = Worksheets("feuil4").Cells(j, 3).Value Then
Worksheets("essai vba").Activate
Cells(i, 2).Value = Worksheets("feuil4").Cells(j, 4).Value
End If
If Worksheets("essai vba").Cells(i, 1).Value = Worksheets("feuil4").Cells(j, 6).Value Then
Worksheets("essai vba").Activate
Cells(i, 3).Value = Worksheets("feuil4").Cells(j, 7).Value
End If
If Worksheets("essai vba").Cells(i, 1).Value = Worksheets("feuil4").Cells(j, 12).Value Then
Worksheets("essai vba").Activate
Cells(i, 4).Value = Worksheets("feuil4").Cells(j, 13).Value
End If
Next j
Next i
End Sub
Je suis un peu découragée. J'ai essayé aussi avec rechercheV mais ça n'a pas l'air de vouloir marcher. Merci beaucoup pour votre aide.
Cordialement,
Elima
J'ai un soucis concernant la lenteur d'un programme que j'ai écrit. J'ai conscience qu'il n'est pas optimal. J'aimerais que dans une colonne j'ai toutes les dates de la plus ancienne à aujourd'hui et que dans les autres colonnes, il y ait, les valeurs des indices et des taux correspondant à ces mêmes dates (car sur le marché américain et sur le marché français les jours fériés ne sont pas les mêmes).
Voilà ce que j'ai commencé à écrire:
Sub alignerrésultats()
For i = 2 To 3000
For j = 2 To 2600
If Worksheets("essai vba").Cells(i, 1).Value = Worksheets("feuil4").Cells(j, 3).Value Then
Worksheets("essai vba").Activate
Cells(i, 2).Value = Worksheets("feuil4").Cells(j, 4).Value
End If
If Worksheets("essai vba").Cells(i, 1).Value = Worksheets("feuil4").Cells(j, 6).Value Then
Worksheets("essai vba").Activate
Cells(i, 3).Value = Worksheets("feuil4").Cells(j, 7).Value
End If
If Worksheets("essai vba").Cells(i, 1).Value = Worksheets("feuil4").Cells(j, 12).Value Then
Worksheets("essai vba").Activate
Cells(i, 4).Value = Worksheets("feuil4").Cells(j, 13).Value
End If
Next j
Next i
End Sub
Je suis un peu découragée. J'ai essayé aussi avec rechercheV mais ça n'a pas l'air de vouloir marcher. Merci beaucoup pour votre aide.
Cordialement,
Elima
A voir également:
- Programme trop lent (nb de lignes important)
- Pc trop lent - Guide
- Programme demarrage windows - Guide
- Mon mac est lent comment le nettoyer - Guide
- Partage de photos en ligne - Guide
- Nb si en anglais - Guide
important:
Il y a t il des possibilités de doublons de données dans la colonne 3 ou dans la colonne 6 ou dans la colonne 12 de la feuille 4 ( pas important si m^me donnée dans col 3 ET col 6 ou col 12)?
nature des données: string, long, double ?