Requête vba

Fermé
vueduciel Messages postés 2 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 8 août 2012 - 8 août 2012 à 12:27
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 8 août 2012 à 16:34
Bonjour,


Je suis nulle en vba ...

J'ai un tableau sous excel composé de 16 colonnes et de 39 069 lignes. Le nbre de colonne ne bouge jamais en revanche le nbre de ligne renseigné pt fluctuer.

dans ce tableau mon probleme est le suivant c'est que les montants indiqués (colonne I) ne sont pas signés donc le total en bas de mon fichier additionne des choux et des carottes. Il y a une autre colonne qui me permet de connaitre le sens de l'opération si c'est positif ou negatif.

J'aimerais en fonction du type de l'operation => rac, tfs (info dispo colonne D) par exemple signer négativement les données qui sont en colonne I

si qlq'un pt m'aider

merci bcp

2 réponses

lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
8 août 2012 à 12:56
Bonjour,
quand tu dis... signer négativement les données qui sont en colonne I
c'est par exemple changer 100 en -100 ?
A+
0
vueduciel Messages postés 2 Date d'inscription mercredi 8 août 2012 Statut Membre Dernière intervention 8 août 2012
8 août 2012 à 14:41
oui c'est ça
0
lermite222 Messages postés 8702 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
8 août 2012 à 16:34
A tester,
Sub ChangeI()
Dim i As Long
    Sheets("feuil1").Select 'adapter nom de la feuille
    'Remplacer le 1 par la première ligne où commencer
    For i = 1 To Cells(Rows.Count, "I").End(xlUp).Row
        If (Cells(i, "D") = "rac" Or Cells(i, "D") = "tfs") And Cells(i, "I").Value > 0 Then
            Cells(i, "I").Value = -Cells(i, "I").Value
        End If
    Next i
End Sub

Fait une copie de ton classeur avant de lancer la macro.
A+
0