XL 2013 Accéler une serie de sommeprod sur plusieurs lignes et variables

GADENSEB

XLDnaute Impliqué
Bonjour le forum,
J'ai joins mon fichier crashtest
Je cherche à accélérer une série de sommeprod (colonne D) qui sont tjrs sur le mm principe avec seule variable la colonne B

Code:
=SOMMEPROD((LIGNE=B6)*(FUTUR="non")*(BQ="oui")*(DEBITCREDIT))

Dans mon fichier original j'ai une trentaine de ligne.
Le temps de calcul est super long.......Donc je me dis que l'on peut accélérer le tout en macro....
QQn aurait une idée ?

Bonne journée

seb
 

Pièces jointes

  • OPTIMISER LES SOMMEPROD - V0.xlsm
    23 KB · Affichages: 58

GADENSEB

XLDnaute Impliqué
@Danreb, me revoila :
D2solé du retard de réponse.... les journées sont chargées
-
La boucle For C = 1 to 19
.... ok je comprends... du coup comment la charger en une seule fois ?
- Je ne suis pas encore à l'aise avec les tableaux ... je suis plus à l"aise avec les tables... mais pkoi pas .. vasy fais la transformation pour tester, je suis curieux... ;-)
- Pour "POSTE" , est-ce que tu peux me décrire un exemple ?
 

Dranreb

XLDnaute Barbatruc
Tu le déclare en tableau dynamique, avec les parenthèses mais sans préciser les dimensions dedans. Alors tu peux lui affecter une plage.Value de plusieurs cellules.
Mais il se retrouve toujours à 2 dimensions commençant à 1, c'est comme ça. Quand le nombre de lignes ou de colonnes est de 1 c'est dimensionné 1 To 1 et il faut toujours mettre ce 1 partout pour accéder à un élément.
 

Dranreb

XLDnaute Barbatruc
Aucun lien. Tu n'aurait plus besoin de ces noms avec un ListObject
Le Range correspondant à un titre c'est LO.ListColumns("LeTitre").DataBodyRange
Le Range correspondant à une ligne c'est LO.ListRows(LaLigne).Range
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 361
Messages
2 087 600
Membres
103 604
dernier inscrit
CAROETALEX59