Dictionary pour remplacer TCD

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 !

erics83

XLDnaute Impliqué
Bonjour,

Grâce aux aides de JB et Job75 (merci !!!), j'ai pu lire très rapidement un tableau afin d'en extraire les données qui m'intéressent. (dans mon précédent post, c'était la recherche de doublons.)

Je souhaitais savoir s'il était possible d'utiliser Dictionary pour obtenir le même résultat qu'avec un TCD....

j'ai fait un essai :
Code:
Set d = CreateObject("Scripting.Dictionary")

With Feuil3
  Set P = .Range("A2", .Range("S" & .Rows.Count).End(xlUp)(19)) 'toutes les colonnes
End With
t = P


For j = 11 To Sheets("Totaux").Range("A65536").End(xlUp).Row - 2
totM = 0
tots = 0

For i = 1 To UBound(t)
 
  If ((t(i, 19)) = Sheets("Totaux").Cells(j, 1).Value And t(i, 18) = Sheets("Totaux").Cells(2, 1).Value And t(i, 17) = Sheets("Totaux").Cells(2, 2).Value And t(i, 16) = "Ac") Then ' Nom/Annee/mois/Ac
 
    totM = totM + t(i, 8)
    tots = tots + t(i, 8) + t(i, 9) + t(i, 10) + t(i, 11)
  
      End If
 
Next

Sheets("Totaux").Cells(j, 4) = totM
Sheets("Totaux").Cells(j, 5) = tots

Next
Il fonctionne, mais il est assez lent...et à force d'être impressionné par la rapidité de dictionary, je me dis qu'il y a peut-être une autre solution....???

En vous remerciant pour votre aide,
 
Bonsoir,

Je pense avoir trouvé comment "garder" en mémoire les calculs tt, en faisant :
Code:
Global NOM As Object, t
Global P As Range, anne%, mois, tt(), i&, j&

donc cela voudrait dire que je peux "stocker" tous les calculs réalisés grâce au code du post #12 mais c'est le "rapatriement" lors du doubleclick qui pose problème....

Une piste, une aide ?
en vous remerciant,
 
Re,

Je précise, pour monter votre usine à gaz il vous faut :

- 2 macros en adaptant celle de mon post #12 pour restituer toutes les colonnes de la plage D:U

- pour le double-clic traiter chaque colonne de la plage D:U en adaptant la macro de mon post #26.

Bonne fin de soirée et bon courage.
 
- 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
234
Réponses
4
Affichages
180
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
484
Réponses
10
Affichages
282
Retour