Excel data validation - afficher un message dans une cellule
Résolu
r4944
Messages postés
136
Statut
Membre
-
r4944 Messages postés 136 Statut Membre -
r4944 Messages postés 136 Statut Membre -
Bonjour,
je voulais bien afficher la definition de chaque definition placée dans une liste déroulante ,je travaille sur plus de 80 liste deroulante
j'utilise une fonction ca marche super bien , mais un certain moment j'ai ce message d'erreur (Procedure too large)
voici mon code
je voulais bien afficher la definition de chaque definition placée dans une liste déroulante ,je travaille sur plus de 80 liste deroulante
j'utilise une fonction ca marche super bien , mais un certain moment j'ai ce message d'erreur (Procedure too large)
voici mon code
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address(0, 0) = "AA4" Then
Select Case Target
Case "EDU1": range1 = "B19"
Case "EDU2": range1 = "B20"
Case "EDU3": range1 = "B21"
Case "EDU4": range1 = "B22"
Case "EXP1": range1 = "B25"
Case "EXP2": range1 = "B26"
Case "EXP3": range1 = "B27"
Case "EXP4": range1 = "B28"
Case "EXP5": range1 = "B29"
Case "EXP6": range1 = "B30"
Case "EXP7": range1 = "B31"
Case "EXP8": range1 = "B32"
Case "EXP9": range1 = "B33"
Case "EXP10": range1 = "B34"
Case "EXP11": range1 = "B35"
Case "EXP12": range1 = "B36"
Case "EXP13": range1 = "B37"
Case "EXP14": range1 = "B38"
Case "EXP15": range1 = "B39"
Case "EXP16": range1 = "B40"
Case "EXP17": range1 = "B41"
Case "EXP18": range1 = "B42"
Case "EXP19": range1 = "B43"
Case "EXP20": range1 = "B44"
Case "A1": range1 = "B71"
Case "A2": range1 = "B72"
Case "PS1": range1 = "B83"
Case "Comp1": range1 = "B95"
Case "Comp2": range1 = "B96"
Case "AEDU1": range1 = "B116"
Case "AEDU2": range1 = "B117"
Case "AEXP1": range1 = "B121"
Case "AEXP2": range1 = "B122"
Case "AEXP3": range1 = "B123"
End Select
End If
If range1 <> "" Then
Sheets("SBR").Range("AA3") = _
Sheets("Process Info").Range(range1).Value
End If
Select Case Target.Address(0, 0)
Case "IR4":
Sub TraitementIR4Target()
End Select
If Target.Address(0, 0) = "AC4" Then
Select Case Target
Case "EDU1": range1a = "B19"
Case "EDU2": range1a = "B20"
Case "EDU3": range1a = "B21"
Case "EDU4": range1a = "B22"
Case "EXP1": range1a = "B25"
Case "EXP2": range1a = "B26"
Case "EXP3": range1a = "B27"
Case "EXP4": range1a = "B28"
Case "EXP5": range1a = "B29"
Case "EXP6": range1a = "B30"
Case "EXP7": range1a = "B31"
Case "EXP8": range1a = "B32"
Case "EXP9": range1a = "B33"
Case "EXP10": range1a = "B34"
Case "EXP11": range1a = "B35"
Case "EXP12": range1a = "B36"
Case "EXP13": range1a = "B37"
Case "EXP14": range1a = "B38"
Case "EXP15": range1a = "B39"
Case "EXP16": range1a = "B40"
Case "EXP17": range1a = "B41"
Case "EXP18": range1a = "B42"
Case "EXP19": range1a = "B43"
Case "EXP20": range1a = "B44"
Case "A1": range1a = "B71"
Case "A2": range1a = "B72"
Case "PS1": range1a = "B83"
Case "Comp1": range1a = "B95"
Case "Comp2": range1a = "B96"
Case "AEDU1": range1a = "B116"
Case "AEDU2": range1a = "B117"
Case "AEXP1": range1a = "B121"
Case "AEXP2": range1a = "B122"
Case "AEXP3": range1a = "B123"
End Select
End If
If range1a <> "" Then
Sheets("SBR").Range("AC3") = _
Sheets("Process Info").Range(range1a).Value
End If
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
End Sub
Private Sub TraitementIR4(ByVal Target As Range)
Dim lCollection As New Collection
lCollection.Add "B49", "K1"
lCollection.Add "B50", "K2"
lCollection.Add "B51", "K3"
On Local Error Resume Next
Sheets("SBR").Range("IQ3") = Sheets("Process Info").Range(lCollection(Target.Address(0, 0))).Value
End Sub
End Select
End If
A voir également:
- Excel data validation - afficher un message dans une cellule
- App data - Guide
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Proteger cellule excel - Guide
1 réponse
Bonjour,
j'aurais une question, tu cherche juste a créer une case qui t'affiche une liste déroulante en fonction d'une liste annoncé dans un autre tableur ?
ce que je peux te proposer c'est :
dans un onglet tu fait une colonne définition, et une colonne définition-details
sur la page voulut tu met une case avec une liste associé (Données - Validation des données -> liste et tu sélectionne définition-nom)
et dans la ligne d'à coté tu met la fonction
=RECHERCHEV(<celule avec la liste>;<colonne definition-nom>;2)
si je me trompe pas normalement cela devrais te permettre d'afficher directement ton résultat en retour de la fonction
pas forcement très clair, je reste à ta disposition
Cordialement
Dragondark de Lonlindil
j'aurais une question, tu cherche juste a créer une case qui t'affiche une liste déroulante en fonction d'une liste annoncé dans un autre tableur ?
ce que je peux te proposer c'est :
dans un onglet tu fait une colonne définition, et une colonne définition-details
sur la page voulut tu met une case avec une liste associé (Données - Validation des données -> liste et tu sélectionne définition-nom)
et dans la ligne d'à coté tu met la fonction
=RECHERCHEV(<celule avec la liste>;<colonne definition-nom>;2)
si je me trompe pas normalement cela devrais te permettre d'afficher directement ton résultat en retour de la fonction
pas forcement très clair, je reste à ta disposition
Cordialement
Dragondark de Lonlindil
ps : je travaille sur plus de 80 listes déroulante
ce que j'ai fait pour mon exemple :
Feuille 1 ->
A1 => Definition
A2 => =RECHERCHEV(B2;Feuil2!A:B;2)
B1 => Code
B2 => vide (avec une liste déroulante généré sur la colonne Feuil2 A (via validation des données))
sur la feuille 2
colonne A -> code (1/ligne)
colonne B -> définition (1/ligne)
Dis moi si c'est ca que tu recherche ou quelque chose de plus compliqué ?
Cordialement
Dragondark de Lonlindil