Macro excel

lalala

XLDnaute Nouveau
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
 

max.lander

XLDnaute Occasionnel
Re : Macro excel

Salut,

De façon très simplicite

Tu peux tester avec la PJ.

Code:
Sub relatif()
Dim derline As Integer

derligne = Range("A" & Rows.Count).End(xlUp).Row
          For Each cell In Range("A1:A" & derligne)
          
        
          Cells(cell.Row, (cell.Column) + 1).Value = cell.Value * -1
          
          
          
          
          Next cell
          

End Sub
 

Pièces jointes

  • nombres.xlsm
    15.6 KB · Affichages: 42
Dernière édition:

lalala

XLDnaute Nouveau
Re : Macro excel

Merci pour ta réponse mais ce n'est pas exactement ça. En fait je souhaite faire du lettrage comptable par montant. Je souhaiterais qu'il me détecte tous les montants inverses identiques (qui font donc 0) et qu'ils les mettent en couleur. Mon prof est qu'à chaque fois j'ai 3 montants par exemple 2 positifs et 1 négatifs ou 5 7 9... et que je suis obligé de le faire à la main. Sur un fichier de 300 000 lignes c'est pas facile. Je voudrais donc qu'il me les détectent automatiquement. J'ai mis un exemple ci-joint.

Merci pour ton aide :)
 

Pièces jointes

  • Exemple lettrage.xlsx
    34.5 KB · Affichages: 46

Roland_M

XLDnaute Barbatruc
Re : Macro excel

bonsoir,

pas facile à comprendre ton raisonnement !?
il faudrait dans ton exemple que tu détails les raisons,

-100 < à partir d'ici je compare à quoi !?
100 < ensuite si ceci doit être coloré pourquoi, parce que ... !?
-100 < puis ici non parce que ... !?
200 < etc ...
-200
200
-200
-200
 

lalala

XLDnaute Nouveau
Re : Macro excel

salut,

Oui je comprend pas facile facile. En fait peut importe la combinaison, je veux juste que lorsqu'il détecte -100 sur le fichier il va me chercher sur tout le fichier un montant qui corresponde a 100 et qui annule ce montant. Idem pour les autres montants. en gros quand tu as deux 100 et un -100 il va te chercher un moins 100 avec le -100. Ce n'est pas grave si ce n'est pas en couleur mais un moyen de les détecter. Je sais pas si c'est possible.
 

ROGER2327

XLDnaute Barbatruc
Re : Macro excel

Bonjour à tous.


Un autre essai.
Ce n'est qu'un essai qui doit être testé sur de vraies données. Si ça va dans le bon sens, on verra à l'optimiser.​


Bonne journée.


ℝOGER2327
#8129


Samedi 7 Sable 143 (Saint Birbe, juge - fête Suprême Quarte)
16 Frimaire An CCXXIV, 5,3866h - ajonc
2015-W50-1T12:55:40Z
 

Pièces jointes

  • Copie de Exemple lettrage (2).xlsm
    22.3 KB · Affichages: 46

Marc L

XLDnaute Occasionnel
Bonjour !

Je souhaiterais qu'il me détecte tous les montants inverses identiques (qui font donc 0) et qu'ils les mettent en couleur.
D'après le classeur joint dans le post #3 :
VB:
Sub Demo()
                   Dim Rc As Range
                   Application.ScreenUpdating = False
    With Feuil1.[B4].CurrentRegion
        For R& = 1 To .Rows.Count - 1
            If .Cells(R).Interior.ColorIndex = xlNone Then
                   Set Rc = .Find(-.Cells(R).Value, .Cells(R), xlValues, xlWhole)
                If Not Rc Is Nothing Then
                  N& = Rc.Row
                    Do
                        If Rc.Interior.ColorIndex = xlNone Then
                           Rc.Interior.ColorIndex = 40
                           .Cells(R).Interior.ColorIndex = 40
                           Exit Do
                        End If
                           Set Rc = .FindNext(Rc)
                    Loop While Rc.Row > N
                End If
            End If
        Next
    End With
                   Set Rc = Nothing
                   Application.ScreenUpdating = True
End Sub
_______________________________________________________________________________
Merci de cliquer sur J'aime ce post en bas à gauche de chaque message ayant aidé …​

_______________________________________________________________________________
Je suis Paris, …
 

ROGER2327

XLDnaute Barbatruc
Re : Macro excel

Bonjour


(...)
D'après le classeur joint dans le post #3 :
(...)
Ça fonctionne.
Mais notre ami parle de traiter 300 000 lignes.
Pour 100 000 lignes, ça prend déjà plus de onze minutes. Bon courage pour 300 000...​


Bonne journée.


ℝOGER2327
#8132


Lundi 9 Sable 143 (Saint Sagouin, homme d’Etat - fête Suprême Quarte)
18 Frimaire An CCXXIV, 1,1658h - lierre
2015-W50-3T02:47:53Z
 

Discussions similaires

  • Résolu(e)
Microsoft 365 requête Dossier
Réponses
6
Affichages
376
Réponses
3
Affichages
344
Compte Supprimé 979
C

Statistiques des forums

Discussions
314 237
Messages
2 107 597
Membres
109 872
dernier inscrit
TESTEYEFB