[Excel / VBA] Formatage de cellule automatisé

Résolu/Fermé
kayok Messages postés 2 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 10 janvier 2008 - 9 janv. 2008 à 15:43
kayok Messages postés 2 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 10 janvier 2008 - 10 janv. 2008 à 09:11
Bonjour à toutes et à tous,

Je travaille actuellement sur un fichier Excel 2000 dans lequel je cherche à automatiser le formatage de certaines cellules.
Par exemple, j'ai un bouton "Préremplir" qui préremplit (!!!) un nombre de lignes défini dans une case par l'utilisateur. Les lignes sont du style :

<Nom : > <case à remplir> <Prénom :> <case à remplir> <Handicapé ?> <case à remplir>

J'arrive à faire tout ce qui est formatage du type "gras", "verrouillé" ou encore "fusion de cellule" mais je cherche en plus à formater une cellule (la dernière "case à remplir" de chaque ligne) pour qu'elle contienne une liste de valeurs (Oui/Non). Je sais le faire à la main et sans souci, mais je suis incapable de trouver l'instruction (les instructions?) permettant le faire en VBA. Et j'ai pourtant bien cherché mais Google n'a pas été mon ami sur ce coup :-( L'aide Excel non plus d'ailleurs... Ca ne doit pourtant pas être sorcier!

Bref, j'en appelle à toute âme charitable qui serait capable de m'aider. Merci d'avance!
A voir également:

3 réponses

bjr

Peux tu envoyer un exemple ici

http://www.cijoint.fr/index.php
0
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 4 686
9 janv. 2008 à 18:11
bonjour

Il te suffit de rajouter une structure de ce type :
    With Cells(ligne, colonne).Validation
        .Delete
        .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:=xlBetween, Formula1:="oui,non,peut-être"
        .IgnoreBlank = True
        .InCellDropdown = True
        .InputTitle = "Choisissez le code"
        .ErrorTitle = "anomalie saisie"
        .InputMessage = "ton message"
        .ErrorMessage = "message anomalie"
        .ShowInput = True
        .ShowError = True
    End With

Tu as bien sûr la possibilité d'adapter tous les paramètres à ton cas.
0
kayok Messages postés 2 Date d'inscription jeudi 16 janvier 2003 Statut Membre Dernière intervention 10 janvier 2008
10 janv. 2008 à 09:11
J'ai essayé la proposition de gbinforme, c'est exactement ce que je voulais! Un GRAND merci à toi!
Par ailleurs, je me suis aussi rappelé que derrière les macros Excel, il y a du code VBA. J'ai donc fait une macro qui "insère" une liste de valeurs dans une cellule et, comme par hasard, je me retrouve avec un code similaire à celui de gbinforme. Comme quoi, je n'avais pas si bien cherché que ça...
0