[RESOLU] Probleme VBA et formule matricielle

  • Initiateur de la discussion Initiateur de la discussion gaouul
  • Date de début Date de début

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 !

gaouul

XLDnaute Nouveau
Bonjour,

Je viens vers vous pour éclairer mes lanternes.

J'ai un souci avec la formule Matricielle suivante, qui m'augmente considérablement le temps de traitement de mon fichier.

Code:
=SI('base paybox'!M2="";"";1*STXT('base paybox'!M2;EQUIV(VRAI;ESTNUM(1*STXT('base paybox'!M2;LIGNE($1:$20);1));0);NB(1*STXT('base paybox'!M2;LIGNE($1:$20);1))))

J'ai alors décider de l'integrer a une Macro, mais la aussi, le temps d'execution est très long, sachant que mon fichier paybox peut atteindre + de 5000 ligne.

Code:
Range("B6:B" & Range("A" & Cells.Rows.Count).End(xlUp).Row).FormulaArray = _
        "=IF('base paybox'!R[-4]C[11]="""","""",1*MID('base paybox'!R[-4]C[11],MATCH(TRUE,ISNUMBER(1*MID('base paybox'!R[-4]C[11],ROW(R1:R20),1)),0),COUNT(1*MID('base paybox'!R[-4]C[11],ROW(R1:R20),1))))"

A savoir que la collone M de ma "Base Paybox" n'est pas figée même si dans l'exemple c'est toujours le même format, en fonction des extraction j'ai d'autres éléments tels que :
"RP-P-38-Prevente"
"RP-P-39-Prevente"
"B00488998"
"B00489026"
"B00489040"

Afin d'obtenir la date de prestation j'ai besoin d'avoir le N° de resa, juste les nombres dans la collone M de la "Base paybox".
"38"
"39"
"488998"
"489026"
"489040"

Je vous joins mon fichier au complet, pour information.
DATE - PAYBOX - AUTOMATE V3.xls - Fichier XLS

Voyez-vous une autre solution pour faire cette manip tout en gagnant du temps lors de l'execution de la macro.

Merci pour votre aide.

Bonne soirée.

Cordialement.
 
Dernière édition:
Re : Probleme VBA et formule matricielle

Bonjour,

Sur 5000 lignes tu écris 10 colonnes soit 50000 écritures et donc au moins autant de calcul.


en désactivant le calcul automatique

dans phase01
sub pahse01
'au début tu mets

application.calculation=xlCalculationManual
'ton code

application.calculation=xlCalculationautomatic

end sub

Si tu trouves pas assez rapide, passer par un tableau VBA et redemandes nous sur ce fil qu'on te vienne en aide...


A+++
 
Re : Probleme VBA et formule matricielle

Bonsoir Zon,

Merci pour l'info, cela mùe fait gagner beaucoup de temps.

Je regarde si ca vos le coup, mais je suis quand même prenneur si une autre solution est possible.

Et merci pour l'aide.

Bonne soirée.
 
- 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

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
169
Réponses
5
Affichages
562
Réponses
7
Affichages
795
Réponses
2
Affichages
404
Réponses
7
Affichages
619
Réponses
5
Affichages
531
Réponses
0
Affichages
459
Retour