XL 2013 utilisation de tableaux pour améliorer le temps d'exécution

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Citronflexe

XLDnaute Junior
Bonjour le forum !

A travers plusieurs post de ce forum, j'ai cru comprendre que l'utilisation de tableaux (Array ? 😵)pouvait grandement améliorer le temps d'exécution d'une macro.
Le problème c'est que je n'en ai jamais vraiment utilisé, je ne sais pas du tout comment m'y prendre.

J'aimerais savoir s'il était possible d'améliorer le temps d'exécution de ma macro dans le fichier ci-joint "test_extrac_suivi.xlsm", en utilisant des tableaux.


En gros, la macro va chercher pour chaque ligne du fichier si le nombre en colonne A existe dans le fichier "2017_SUIVI LOTS_.....", colonne D, et fait la somme des nombres en colonne M.
Cela fonctionne bien, mais la macro dure à peu près 25sec chez moi...


Merci de votre aide précieuse ! 🙂
 

Pièces jointes

Bonjour.
Dans votre cas vous pourriez l'écrire comme ça :
VB:
Option Explicit
Sub RechercheSuivi()
   Dim TNum(), TQté(), TRés(17001 To 18999, 1 To 2), L As Long, N As Long, Suivi As Worksheet, RngLig As Range
   Set Suivi = Workbooks("2017_SUIVI LOTS - PROD & SC_factice.xlsm").Worksheets("EXPE CLIENTS BAGS-MECA")
   Set RngLig = Suivi.Rows(3).Resize(Suivi.Cells(Suivi.Rows.Count, "D").End(xlUp).Row - 2)
   TNum = RngLig.Columns("D").Value
   TQté = RngLig.Columns("M").Value
   For N = LBound(TRés, 1) To UBound(TRés, 1): TRés(N, 1) = N: Next N
   On Error Resume Next
   For L = 1 To UBound(TNum, 1)
      N = TNum(L, 1)
      TRés(N, 2) = TRés(N, 2) + TQté(L, 1)
      Next L
   Feuil1.[A1:B1999].Value = TRés
   End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
1 K
Retour