VBA: créer des liste de validation
Résolu/Fermé
Ludivine
-
6 déc. 2011 à 14:11
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 7 déc. 2011 à 09:26
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 7 déc. 2011 à 09:26
A voir également:
- Xlbetween vba
- Mkdir vba ✓ - Forum VB / VBA
- Excel compter cellule couleur sans vba - Guide
- Vba range avec variable ✓ - Forum VB / VBA
- Autofill vba ✓ - Forum Excel
- L'indice n'appartient pas à la sélection vba ✓ - Forum Programmation
3 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
6 déc. 2011 à 14:28
6 déc. 2011 à 14:28
Bonjour,
Via l'enregistreur de macros (Outils/Macros/Nouvelle macro) :
Via l'enregistreur de macros (Outils/Macros/Nouvelle macro) :
Sub TestValidations() With Columns("D:D").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="Customer reached on first try,Customer reached on second try,Customer reached on third ty,Cust not contacted,cust refused quote,Cust not reachable,Cust called for NTF DLV Loop" End With With Columns("E:E").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="Yes,No,Not Tested" End With With Columns("F:F").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="New Issue,Same Issue,Partial Fix,Unit Damaged,Unit & Box damaged,OS Problem,Accessories Missing" End With With Columns("H:H").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="Rerepair Off-site,Escalation,On-site repair,Explanation / Education,Buyback, Technical Support,Compensation" End With With Columns("K:M").Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:="Yes,No" End With End Sub
Merci beaucoup pour ta réponse FRanck !!
Alors ça fonctionne très bien mais uniquement dans l'onglet dans lequel j'étais qd j'ai créé la macro, pas dans les autres onglets créés avant ou après !!!
Moi j'aimerais que quelques soit l'onglet dans lequel je sois dans le classeur (fichier) la macro soit appliquée sur l'onglet en cours d'utilisation.
C'est possible tu penses ?
Merci beaucoup encore !!
Alors ça fonctionne très bien mais uniquement dans l'onglet dans lequel j'étais qd j'ai créé la macro, pas dans les autres onglets créés avant ou après !!!
Moi j'aimerais que quelques soit l'onglet dans lequel je sois dans le classeur (fichier) la macro soit appliquée sur l'onglet en cours d'utilisation.
C'est possible tu penses ?
Merci beaucoup encore !!
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
6 déc. 2011 à 14:47
6 déc. 2011 à 14:47
Moi j'aimerais que quelques soit l'onglet dans lequel je sois dans le classeur (fichier) la macro soit appliquée sur l'onglet en cours d'utilisation
Ce code fonctionne avec n'importe qu'elle feuille, suffit de le lancer dans la feuille que tu veux...
Tu te places dans la feuille de ton choix et lance la macro (ALT+F8 choix : TestValidation et clic sur exécuter).
Ce code fonctionne avec n'importe qu'elle feuille, suffit de le lancer dans la feuille que tu veux...
Tu te places dans la feuille de ton choix et lance la macro (ALT+F8 choix : TestValidation et clic sur exécuter).
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
6 déc. 2011 à 14:49
6 déc. 2011 à 14:49
En cadeau, pour supprimer, après utilisation, toutes les listes de validation :
Sub SupprValidation() With Columns("D:F").Validation .Delete End With With Columns("H:H").Validation .Delete End With With Columns("K:M").Validation .Delete End With End Sub
Alors c'est peut être mes yeux ?!!
voici mon fichier !
http://cjoint.com/?ALgo25my9wJ
J'ai créé la macro quand j'étais dans l'onglet "50" ensuite j'ai créé une nouvelle feuille (Feuil1).
Si je suis dans la feuille 1 et que je lance la macro, ça n'applique pas les listes de validation !
MErci pour vos lumières !
voici mon fichier !
http://cjoint.com/?ALgo25my9wJ
J'ai créé la macro quand j'étais dans l'onglet "50" ensuite j'ai créé une nouvelle feuille (Feuil1).
Si je suis dans la feuille 1 et que je lance la macro, ça n'applique pas les listes de validation !
MErci pour vos lumières !
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
6 déc. 2011 à 16:30
6 déc. 2011 à 16:30
pas tes yeux. Il ne faut pas mettre ce code dans un module de feuille, mais dans un module standard. Sous VBE : insertion/Module. Comme cela, ça fonctionne quelque soit la feuille d'ou tu la lances...
Regarde cet exemple :
https://www.cjoint.com/?ALgqC2tBaeo
Regarde cet exemple :
https://www.cjoint.com/?ALgqC2tBaeo
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
7 déc. 2011 à 09:26
7 déc. 2011 à 09:26
De rien Ludivine.
A+
A+