Encadrer valeurs dans cellule en fonction autre
Résolu
CHARLYJACK
Messages postés
345
Date d'inscription
Statut
Membre
Dernière intervention
-
CHARLYJACK Messages postés 345 Date d'inscription Statut Membre Dernière intervention -
CHARLYJACK Messages postés 345 Date d'inscription Statut Membre Dernière intervention -
Bonsoir
J'ai une macro qui permet de compléter une cellule de destination en fonction du contenu d une autre (source).
exemple si B7 = particulier alors G7 = A7*20% ...
J'ai donc une macro sur la feuille qui appelle 3 codes différents . ( Particuliers, Prof ...)
et qui complète G7 avec des pourcentages différents et en fonction du montant intégré dans une intputbox.
Le problème c'est que maintenant on me demande de limiter la valeur saisie dans la cellule de destination
si on saisit directement dedans en fonction de la cellule source B7.
Je ne vois pas comment faire !!!
Par avance merci de vos idées.
J'ai une macro qui permet de compléter une cellule de destination en fonction du contenu d une autre (source).
exemple si B7 = particulier alors G7 = A7*20% ...
J'ai donc une macro sur la feuille qui appelle 3 codes différents . ( Particuliers, Prof ...)
et qui complète G7 avec des pourcentages différents et en fonction du montant intégré dans une intputbox.
Le problème c'est que maintenant on me demande de limiter la valeur saisie dans la cellule de destination
si on saisit directement dedans en fonction de la cellule source B7.
Je ne vois pas comment faire !!!
Par avance merci de vos idées.
A voir également:
- Encadrer valeurs dans cellule en fonction autre
- Fonction si et - Guide
- Excel remplir automatiquement une cellule en fonction d'une autre ✓ - Forum Excel
- Excel cellule couleur si condition texte - Guide
- Aller à la ligne dans une cellule excel - Guide
- Comment colorer une cellule excel en fonction du contenu d'une autre cellule - Forum Excel
1 réponse
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonsoir,
ne penses-tu pas que nous pourrions mieux t'aider si tu partageais le code de ta macro?
je crois deviner que quelqu'un (qui?) te demande de ne pas laisser saisir n'importe quelle valeur en G7.
ai-je bien compris?
si oui, cela ne te fait-il pas penser à un exercice récent: Limiter une saisie dans une cellule?
ne penses-tu pas que nous pourrions mieux t'aider si tu partageais le code de ta macro?
je crois deviner que quelqu'un (qui?) te demande de ne pas laisser saisir n'importe quelle valeur en G7.
ai-je bien compris?
si oui, cela ne te fait-il pas penser à un exercice récent: Limiter une saisie dans une cellule?
Je pensais rappeler les mêmes macro mais lorsque la cellule que j'ai nommé "Apport" changeait.
Dans mon fichier j'ai nommé les cellules le G7 était pour tenter d expliquer.
La macro qui appelle les 3 autres :
Private Sub Worksheet_Change(ByVal Target As Range)
ActiveSheet.Unprotect Password:="ttt"
'Variables
Dim Clt As String
'Valeur Variable
Clt = Range("Choix").Value
'Réinitialisation du Choix si Changement de montant
If Not Intersect(Target, Range("Montant")) Is Nothing Then
Range("Choix").Value = "Choix"
End If
'Fixation du pourcentage maximum de la cellule Depot
If Not Application.Intersect(Target, Range("Depot")) Is Nothing Then
If Target > 0.15 Then
Target = 0.15
MsgBox ("Attention au Pourcentage Maximum")
End If
End If
'Appel Macro en fonction de la cellule nommée Choix
If Not Application.Intersect(Target, Range("Choix")) Is Nothing Then
If Clt = "Particulier" Then
Call Apport_Particulier
Else
If Clt = "Pro - de 2 ans" Then
Call Apport_Prof_Moins_2
Else
If Clt = "Pro + de 2 ans" Then
Call Apport_Prof_Plus_2
End If
End If
End If
End If
End Sub
Un exemple de code appelé
Sub Apport_Prof_Plus_2()
'Détermination des Variables
Dim CellApp As Variant
Dim ValLim As Single
'Plafond : Formule utilisée
ValLim = Range("Montant").Value * 0.25
'Boîte de dialogue : Insertion Montant
CellApp = InputBox("Rappel,l’apport maximum autorisé est de 25% soit un montant de " & " " & ValLim & " " & "€ (Insérez le montant en €)", "Pro de + 2 ans")
'Gestion du caractère "."
CellApp = Replace(CellApp, ".", ",")
'Utilisation de annuler : Gestion du msg d'erreur 13 ( Variable Variant )
If CellApp = "" Then Exit Sub
' Renseignement de la cellule G23 (LOA + Crédit Bail)
If IsNumeric(CellApp) And CellApp >= 0 And CellApp <= ValLim Then
Range("Apport").Value = CellApp
Selection.Copy
Else
'Avertissement erreur montant saisi
MsgBox ("Montant supérieur à la limite autorisée")
End If
'Cellules Déselectionnées
Application.CutCopyMode = False
Range("G28").Select
Range("Depot").Value = ("0")
Range("Depot").Locked = True
ActiveSheet.Protect Password:="ttt"
End Sub
Cdt
la macro que tu montres, est-ce la macro de départ, qui fonctionne bien, ou bien est-ce une tentative de solution du nouveau problème?
je ne vois si B7 ni G7 dans le code de la macro.
Ca marche parfaitement !
Elle appelle 3 macros. ( B7 et G7 c'était juste pour expliquer)
Elles alimentent la cellule "Apport" suivant des formules différentes.
Mon problème c'est de réussir à inverser la logique !
La cellule "Apport" devient la cellule à l'origine des limites quand on saisit directement dedans,
mais reste dépendante de la cellule " choix ".
Je ne vois vraiment pas comment faire ...
https://www.cjoint.com/c/HDjvCKCX1aZ
C'est la cellule "Apport" qui doit être complétée, mais qui est limitée en fonction de la cellule "Choix"
Encore merci de ton aide