Excel : Modification du signe d'un nombre

Résolu
alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
peut-on, sous Excel modifier le signe d'un nombre sans ajouter une nouvelle colonne ? Explications : je prépare un tableau de suivi des mouvements sur compte pour les trésoriers d'une association basé sur le tableau croisé dynamique . Ce dernier implique de signer les montants. Signe que je ne voudrais pas faire saisir par les trésoriers mais conditionner par la nature de la ligne correspondante (Recette / Dépense/...). Peut-on le faire simplement : le trésorier saisit 100 et s'il s'agit d'une ligne dépense enregistrer -100.

Merci d'avance

Alain
Configuration: Windows XP
Firefox 2.0.0.14

4 réponses

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Comme tu ne me dis pas les colonnes concernées, je t'ai fait la macro paramétrable à placer dans la feuille de saisie (voir mode d'emploi, si nécessaire)
    Private Sub Worksheet_Change(ByVal sel As Range)
    Dim colm As Integer ' colonne montant
    Dim colt As Integer ' colonne type
        colm = Asc("D") - 64    ' remplacer D par colonne montant
        colt = Asc("B") - 64    ' remplacer B par colonne type
        If sel.Column = colm And Cells(sel.Row, colt) = "Dépense" Then
            Application.EnableEvents = False
            sel.Value = sel.Value * -1
            Application.EnableEvents = True
        End If
    End Sub
    1
    1. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112
       
      Super et merci beaucoup,

      ... et surtout reste zen car je suis igniare en Excel. Comment faire en sorte que cette macro que tu m'as envoyée
      soit exécutée à chaque saisie d'un montant.

      Merci encore de m'accorder de ton temps

      Alain
      0
  2. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Ah ! L'informatique.

    Elle ne pardonne pas les erreurs : c'est 0 ou 1 pas peut-être !

    Heureux de t'avoir aidé !
    1
  3. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    C'est possible de le faire avec une macro événementielle toute simple mais pour cela il faudrait nous dire en fonction de quoi on reconnaît une dépense car il faut bien pouvoir distinguer avec la saisie d'une autre cellule de la même ligne le négatif du positif.
    0
    1. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112
       
      Bonjour Gbinforme,
      c'est la valeur de la colonne "Nature" (Recette / Dépense) de cette même ligne qui conditionne le signe du montant saisi. Si la colonne "Nature" pour cette ligne est valorisée à "Recette" le montant saisi est positif, si cette même colonne est valorisée à "Dépense" le montant est négatif.

      Merci

      Alain
      0
  4. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    C'est une macro événementielle qui se déclenche automatiquement sans rien faire d'autre que la saisie lors de chaque saisie et modifie la colonne montant paramétrée.

    Tu suis le lien du mode d'emploi que je t'ai mis pour la copier sur la feuille VBA de saisie et tu remplaces les bonnes colonnes à l'endroit précisé en gras
        colm = Asc("D") - 64    ' remplacer D par colonne montant
        colt = Asc("B") - 64    ' remplacer B par colonne type
    
    0
    1. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112
       
      Gbinforme tu es très fort !!!

      MERCI beaucoup. Ca marche. Excellent.

      J'ai effectivement suivi ton mode d'emploi et miracle : CA MARCHE !!!

      MERCI Encore


      Alain
      0
      1. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112 > alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention  
         
        Gbinforme,

        je ne comprends plus rien ... L'informatique a ses mystères !!! Ca ne marche plus d'un seul coup. J'ai essayé dans un autre classeur : Idem. Que s'est-il donc passé ?
        Ce que je fais :
        Outil -> Macros -> Visual Basic Editor -> Affichage -> Explorateur de projets -> Data (nom de ma feuille) sur laquelle je double clique - Coller (ta macro) -> modification des colonnes -> Enregistrer -> Fermer et retourner à microsoft Excel
        Est-ce OK ?

        Alain
        0
      2. alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention   112 > alainjjb Messages postés 747 Date d'inscription   Statut Membre Dernière intervention  
         
        Cette fois je ne t'embête plus. Après avoir recommencer tout à zéro, ça marche. Ah ! L'informatique.

        Merci encore

        Alain
        0