Calcule d'une cellule selon une autre

Résolu
Cindydauphas Messages postés 32 Statut Membre -  
eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonsoir a vous,

Je cherche une solution depuis quelque temps.
Voici mon problème:
je possédè un tableau ou je rentre des données (prix HT ou TTC) selon mes clients, j'aimerai que mon taux de TVA qui est de 10% ce calcule tout seul peut importe mon prix TTC où HT.
Voici comment est constitué mon tableau en 3 colonnes HT < TVA < TTC
J'ai rentré une formule qui calcule mon taux de TVA en enlevant 10% de mon TTC et qui calcule mon HT en le soustrayant aux TTC.
Mais voila des fois on me donne les tarifs en HT et d'autres en TTC et je ne sais pas comment associés ces deux formules.
j'aimerai que selon ou je rentre une donnée peu importe la cellule, les autres se calculent.

Je vous remercie par avance..

6 réponses

  1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Bonjour à tous,

    Une autre proposition que j'avais oublier de poster.
    Tu peux saisir HT ou TTC, l'autre et la TVA se calculent à la validation.
    Tu peux coller plusieurs valeurs en colonne.
    https://www.cjoint.com/c/DBytyxjhbRV

    eric

    En plus du merci (si si, ça se fait !!!), penser à mettre en résolu lorsque c'est le cas (en haut vers votre titre).
    Merci
    1
  2. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
     
    Pas bonjour non plus,

    Au passage, TVA = HT * 0.10, à partir du hors taxe et pas du TTC.
    Si tu as le TTC, tu calcules le HT = TTC / 1.10. Puis TVA = TTC - HT, ce qui n'a rien à voir comme résultat avec ce que tu calculais.
    Tu peux revoir tous tes calculs de TVA à partir du TTC qui sont totalement erronés.
    https://www.cjoint.com/c/DBzmouShkpi
    Calculs actifs sur lignes 2 à 45.

    eric

    1
  3. Cindydauphas Messages postés 32 Statut Membre
     
    Je vous remercie de vos réponses, mais je n'ai sais absolument pas comment faire ceci...
    0
  4. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  5. Cindydauphas Messages postés 32 Statut Membre
     
    Merci pour mes calculs c'est vrai que je n'avais pas remarqué mais c'est un tableau sur lequel j'étudie juste mes formules donc aucune importance mais je te remercie tout de même.

    Comment fais-tu sa sans formule ?
    -2
    1. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      C'est une macro en vba qui est appelée quand tu modifies une cellule.
      Faire un clic-droit sur le nom de l'onglet et choisir 'visualiser le code...'
      Private Sub Worksheet_Change(ByVal Target As Range)
          Const TVA1 As Currency = 0.1
          Const colTTC = 20
          Const colTVA = 21
          Const colHT = 22
          Dim c As Range
          For Each c In Target
              If c.Row = 1 Or c.Row > 45 Or c = "" Then Exit Sub
              Application.EnableEvents = False
              Application.ScreenUpdating = False
              Select Case c.Column
              Case colHT ' HT
                  Cells(c.Row, colTTC) = CCur(Cells(c.Row, colHT) * (1 + TVA1)) ' TTC
                  Cells(c.Row, colTVA) = CCur(Cells(c.Row, colHT) * TVA1) ' TVA
              Case colTVA ' TVA
                  If Target.Count = 1 Then Application.Undo
              Case colTTC ' TTC
                  Cells(c.Row, colHT) = CCur(Cells(c.Row, colTTC) / (1 + TVA1)) ' HT
                  Cells(c.Row, colTVA) = CCur(Cells(c.Row, colTTC) - Cells(c.Row, colHT)) ' TVA
              Case Else
                  Exit Sub
              End Select
              Application.EnableEvents = True
          Next c
      End Sub

      eric
      0
    2. Cindydauphas Messages postés 32 Statut Membre
       
      Merci beaucoup cela fonctionne très bien mais malheureusement jusqu'à la ligne 41..
      Es ce qu'il existe une solution ?
      Merci d'avance
      0
    3. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Pas bonjour non plus...

      Vu que je ne sais pas ce qu'il y a en ligne 41 je ne peux pas te répondre.
      D'autre part la macro a été faite sur le fichier fourni, et s'arrête donc en ligne 45 avec :
      If c.Row = 1 Or c.Row > 45 Or c = "" Then Exit Sub

      Si ton fichier a changé et que tu n'y arrives pas, le déposer sur cjoint.com.

      eric
      0
    4. Cindydauphas Messages postés 32 Statut Membre
       
      Bonjour,

      excusé moi..

      Voici mon fichier,
      https://www.cjoint.com/?0ClkVfEFAfC

      Es ce possible de pouvoir utiliser cette "formule" jusqu'à l'infini car je ne sais pas modifié cette "formule" et je pense l'utiliser souvent?
      0
    5. eriiic Messages postés 24581 Date d'inscription   Statut Contributeur Dernière intervention   7 281
       
      Tu as aussi changé tes colonnes TTC, TVA, HT de place.
      Lorsqu'il y a une macro tu ne peux pas le faire sans adapter le code, donc ne les bouge plus.
      https://www.cjoint.com/?DClsp4T269M

      eric
      0