Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Installer une liste de validation par code VBA

5 réponses
Avatar
Philippe Pons
Salut,

Je voudrais installer par code une liste déroulante de validation OUI/NON.
L'enregistreur de macro donne le code suivant, pour une cellule.
Problème: si je relance ce code sur une autre cellule:
1- la liste propose non pas 2 choix OUI et NON mais un choix unique
OUI;NON
2- OUI , n'est pas sélectionné ( alors que je le fait lors de
l'enregistrement!)
Des idées pour améliorer cette macro?

Merci d'avance,
Philippe


With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=
_
xlBetween, Formula1:="OUI;NON"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With

5 réponses

Avatar
Denis Michon
Bonjour Philippe,

Dans ton code, remplace le point-virgule par simplement une virgule dans cette expression : :="OUI;NON"


Salutations!



"Philippe Pons" a écrit dans le message de news:
Salut,

Je voudrais installer par code une liste déroulante de validation OUI/NON.
L'enregistreur de macro donne le code suivant, pour une cellule.
Problème: si je relance ce code sur une autre cellule:
1- la liste propose non pas 2 choix OUI et NON mais un choix unique
OUI;NON
2- OUI , n'est pas sélectionné ( alors que je le fait lors de
l'enregistrement!)
Des idées pour améliorer cette macro?

Merci d'avance,
Philippe


With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator: _
xlBetween, Formula1:="OUI;NON"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Avatar
Denis Michon
J'oubliais,

Tu peux remplacer
With Selection.Validation

par Range("A1:A25").Validation

évidemment, tu adaptes l'adresse de la plage par celle de ton application. Ta liste va alors s'appliquer à toute ta plage en un seul
traitement.


Salutations!


"Philippe Pons" a écrit dans le message de news:
Salut,

Je voudrais installer par code une liste déroulante de validation OUI/NON.
L'enregistreur de macro donne le code suivant, pour une cellule.
Problème: si je relance ce code sur une autre cellule:
1- la liste propose non pas 2 choix OUI et NON mais un choix unique
OUI;NON
2- OUI , n'est pas sélectionné ( alors que je le fait lors de
l'enregistrement!)
Des idées pour améliorer cette macro?

Merci d'avance,
Philippe


With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator: _
xlBetween, Formula1:="OUI;NON"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Avatar
Philippe Pons
Merci, c'est d'une simplicité biblique!
Philippe

"Denis Michon" a écrit dans le message de
news:klqHe.146$
Bonjour Philippe,

Dans ton code, remplace le point-virgule par simplement une virgule dans
cette expression : :="OUI;NON"



Salutations!



"Philippe Pons" a écrit dans le
message de news:

Salut,

Je voudrais installer par code une liste déroulante de validation OUI/NON.
L'enregistreur de macro donne le code suivant, pour une cellule.
Problème: si je relance ce code sur une autre cellule:
1- la liste propose non pas 2 choix OUI et NON mais un choix unique
OUI;NON
2- OUI , n'est pas sélectionné ( alors que je le fait lors de
l'enregistrement!)
Des idées pour améliorer cette macro?

Merci d'avance,
Philippe


With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator: > _

xlBetween, Formula1:="OUI;NON"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With






Avatar
Philippe Pons
Oui, mais je n'arrive pas à imposer le sélection du OUI, dans chaque liste.
Si je fait tourner l'enregsitreurde macro uniquement sur cette action: pas
de code enregistré!!
Une idée?
Merci encore!!
Philippe

"Denis Michon" a écrit dans le message de
news:3lqHe.2989$
J'oubliais,

Tu peux remplacer
With Selection.Validation

par Range("A1:A25").Validation

évidemment, tu adaptes l'adresse de la plage par celle de ton application.
Ta liste va alors s'appliquer à toute ta plage en un seul

traitement.


Salutations!


"Philippe Pons" a écrit dans le
message de news:

Salut,

Je voudrais installer par code une liste déroulante de validation OUI/NON.
L'enregistreur de macro donne le code suivant, pour une cellule.
Problème: si je relance ce code sur une autre cellule:
1- la liste propose non pas 2 choix OUI et NON mais un choix unique
OUI;NON
2- OUI , n'est pas sélectionné ( alors que je le fait lors de
l'enregistrement!)
Des idées pour améliorer cette macro?

Merci d'avance,
Philippe


With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator: > _

xlBetween, Formula1:="OUI;NON"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With






Avatar
Philippe Pons
Suis je bête!! Il suffit d'écrire OUI dans chaque cellule!!

Philippe

"Philippe Pons" a écrit dans le message
de news:%
Oui, mais je n'arrive pas à imposer le sélection du OUI, dans chaque
liste.

Si je fait tourner l'enregsitreurde macro uniquement sur cette action: pas
de code enregistré!!
Une idée?
Merci encore!!
Philippe

"Denis Michon" a écrit dans le message de
news:3lqHe.2989$
J'oubliais,

Tu peux remplacer
With Selection.Validation

par Range("A1:A25").Validation

évidemment, tu adaptes l'adresse de la plage par celle de ton
application.


Ta liste va alors s'appliquer à toute ta plage en un seul
traitement.


Salutations!


"Philippe Pons" a écrit dans le
message de news:

Salut,

Je voudrais installer par code une liste déroulante de validation
OUI/NON.


L'enregistreur de macro donne le code suivant, pour une cellule.
Problème: si je relance ce code sur une autre cellule:
1- la liste propose non pas 2 choix OUI et NON mais un choix unique
OUI;NON
2- OUI , n'est pas sélectionné ( alors que je le fait lors de
l'enregistrement!)
Des idées pour améliorer cette macro?

Merci d'avance,
Philippe


With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop,
Operator: > > _

xlBetween, Formula1:="OUI;NON"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With