• Initiateur de la discussion Initiateur de la discussion lalala
  • 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 !

L

lalala

Guest
Bonsoir à tous,

Je cherche a faire une macro qui me permet de détecter les valeurs inverses qui font 0.

Je m'explique :

J'ai une colonne :

-100
100
-100
200
-200
200
-200
-200

Je souhaiterais que la macro me détecte les 100 et -100 et me laisse le 100
Pour les 200 qu'elle me détecte -200 200 -200 et 200 et qu'elle me laisse le dernier -200

Je vous remercie par avance
 
Re : Macro excel

Bonjour pierrejean, bonjour à tous.


Toujours pour le plaisir, ~10 s pour un million de données.​


Bonne journée.


ℝOGER2327
#8134


Mardi 10 Sable 143 (Exaltation d’Ubu Roi (Ubu d’hiver) - fête Suprême Première seconde)
19 Frimaire An CCXXIV, 4,7984h - sabine
2015-W50-4T11:30:58Z
 

Pièces jointes

Re : Macro excel

Re

Tout d'abord MERCI ROGER pour la révision de ma macro (que je vais essayer de 'digérer')
Je vais tenter de comprendre pourquoi la différence de générateur produit un tel écart dans la vitesse d’exécution (mais je doute fort d'arriver à un résultat tant mes neurones vieillissants renâclent devant les challenges, aussi intéressants soient-ils)
 
Re : Macro excel

Re...


Re

Tout d'abord MERCI ROGER pour la révision de ma macro (que je vais essayer de 'digérer')
Je vais tenter de comprendre pourquoi la différence de générateur produit un tel écart dans la vitesse d’exécution (mais je doute fort d'arriver à un résultat tant mes neurones vieillissants renâclent devant les challenges, aussi intéressants soient-ils)
Oui, le temps n'arrange pas nos neurones ! D'où le décalage temporel de ma réponse...

Pour ce qui est de la révision de votre macro, elle consiste pour l'essentiel en le remplacement de​
Code:
For q = 0 To nb - 1
Cells(pl(q) + decal, 2) = 0
Cells(mo(q) + decal, 2) = 0
Next
par le traitement du tableau tablo et sa recopie dans la feuille :​
Code:
    For q = 0 To nb - 1
      tablo(pl(q), 1) = 0
      tablo(mo(q), 1) = 0
    Next
 ' ....................
  Range("B4:B" & Range("B" & Rows.Count).End(xlUp).Row).Value = tablo
Le reste est surtout cosmétique.

Ceci dit, j'ai creusé un peu l'influence des générateurs.
Vous en trouverez une dizaine, plus ou moins farfelus, dans la pièce jointe.
Les résultats sont parfois surprenants. Reste à en faire l'interprétation...​


Bonne soirée.


ℝOGER2327
#8139


Dimanche 15 Sable 143 (Khurmookum du Dr Faustroll - fête Suprême Seconde)
24 Frimaire An CCXXIV, 7,7587h - oseille
2015-W51-2T18:37:15Z
 

Pièces jointes

Dernière édition:
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 Formule excel
Réponses
7
Affichages
305
Réponses
17
Affichages
506
Réponses
25
Affichages
1 K
Réponses
4
Affichages
498
Retour