Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Saisi HT et TTC indifféremment

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

n000

XLDnaute Nouveau
Bonjour,

Je souhaite pouvoir saisir soit le montant HT dans une colonne et que le montant TTC se calcul dans une autre colonne, mais également pouvoir faire l'inverse cad saisir dans la colonne TTC et que le montant HT se calule.

Avec une variable sur le taux de TVA, mais ca c'est annexe.

J'ai deja trouvé ce qui suit qui permet de passer par simple clic du HT au TTC et donc de saisir depuis chaque affichage. La meme chose avec sur deux colonnes.


Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim C As Range
Dim Coef As Single
Coef = 1 + Range("D3")
If Target.Count > 1 Then Exit Sub
If Target.Address = "$D$4" Then
Target = IIf(Target = "Prix TTC", "Prix HT", "Prix TTC")
For Each C In Range("D6😀11")
C = IIf(Range("D4") = "Prix TTC", C * Coef, C / Coef)
Next
Range("D3").Select
End If
End Sub

Merci pour vos propositions.
 
Re : Saisi HT et TTC indifféremment

Bonsoir,

essaye peut être ceci, les montants HT en colonne A, les montants TTC en colonne B, code à utiliser dans le module de la feuille concernée :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column > 2 or Target.Count > 1 Then Exit Sub
If Target.Column = 1 Then Target.Offset(0, 1) = Target * 1.196
If Target.Column = 2 Then Target.Offset(0, -1) = Target / 1.196
End Sub

bonne soirée
@+
 
Re : Saisi HT et TTC indifféremment

Merci encore mais les pb se posent les un apres les autres:

J'ai ajouté la variable Taux, ce qui donne:

If Target.Column > 4 Or Target.Count > 3 Then Exit Sub
If Target.Column = 3 Then Target.Offset(0, 1) = Target * (1 + Range("Taux") / 100)
If Target.Column = 4 Then Target.Offset(0, -1) = Target / (1 + Range("Taux") / 100)

Mais je souhaiterai que lorsque l'on change le taux de 19.6 à 5.5 par exemple, la colonne TTC se recalcule en prenant comme base de calcul la colonne HT.
En effet le HT ne change pas.

Et puis, je remercie encore la communauté, mais comme toute les bonnes choses, il ne faut pas trop abuser, ou puis avoir des documentations pour ce type de question ? Site, livre...
Merci encore.
 
Re : Saisi HT et TTC indifféremment

Bonjour,

essaye en modifiant comme suit :

Code:
Option Explicit
Public b  As Boolean
Private Sub Worksheet_Change(ByVal Target As Range)
If b = True Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target.Address = Range("Taux").Address Then maprocedure
If Target.Column = 3 Or Target.Column = 4 Then
b = True
If Target.Column = 3 Then Target.Offset(0, 1) = Target * (1 + Range("Taux") / 100)
If Target.Column = 4 Then Target.Offset(0, -1) = Target / (1 + Range("Taux") / 100)
b = False
End If
End Sub
Sub maprocedure()
Dim c As Range
b = True
For Each c In Range("C2", Range("C65536").End(xlUp))
    c.Offset(0, 1) = c * (1 + Range("Taux") / 100)
Next c
b = False
End Sub

bonne fin d'après midi
@+
 
Re : Saisi HT et TTC indifféremment

Ca fonctionne tres bien effectivement.
Je crois avoir une derniere question.
Comment faire pour reproduire la macro sur d'autres colonnes (10 à 20 fois).

Dans la premeire reponse il suffisait de dupliquer et de changer les ref.

Merci encore
 
Re : Saisi HT et TTC indifféremment

Je suis désolé mais je n'arrive pas répéter la fonction en meme temps sur d'autre colonne (qui fonctionne pas deux ht et ttc) dans la meme feuille.
Mes connaissances sont trop limitées.
Je me suis demandé s'il ne fallait pas utiliser la commande Worksheet_SelectionChange ?
Peut etre que Pierrot93 peut concocter qlq chose.
Merci
 
Re : Saisi HT et TTC indifféremment

bonjour a tous
je viens d'arriver sur le forum parce que je rame avec excel ^^ et en particulier avec les macro
je voudrais faire ce que veux faire n000 avec deux taux (réduit et normal) voire trois (un sans tva)
La colonne prix HT est la 3 le prix TTC est la 4 et j'ai rajouté trois case pour indiquer le taux
ensuite j'ai essayé avec des formules classiques mais ca ne plait pas a excel qui trouve que c'est circulaire
Alors j'ai essayé d'incruster les macro pressentes dans le topic en créant un bouton. Mais je suis un débutant absolu en la matière donc évidemment ca ne marche pas

Une bonne âme pourrait elle éclairer ma lanterne

Merci d'avance
 
- 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

Discussions similaires

Réponses
1
Affichages
348
Réponses
7
Affichages
620
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…