![]() |
|
Forum
|
|
|||||||
![]() |
|
|
LinkBack | Outils de la discussion |
|
|
#16 (permalink) |
|
Guest
Messages: n/a
|
Merci merci et merci à Thierry.
Je connaissais pour la liste de validation. Ton fichier est presque ce que je cherche. La derniére petite chose, si je peux me permettre, c'est de faire apparaître un userform combobox avec la liste déroulante (genre message dans une fenêtre) voir le fichier joint. Et ceci évidement en faisant un clic droit sur une cellule précise. J'espére que c'est un peu plus clair et que je n'abuse pas trop même si le client est roi Bonne journée encore @rnaud PS, le fichier ne passe pas alors je te l'envoie en BAL Thierry @+ |
| ANNONCES | |||
|
|
|
|
#20 (permalink) |
|
Guest
Messages: n/a
|
Merci Thierry, je crois que tu as compris le principe mais, et je suis désolé de le dire, ce n'est pas encore cela aussi je t'envoie en piéce jointe une fichier XLS que j'ai trouvé sur le net.
En l'ouvrant tu verras que le userform apparaît lorsque tu cliques sur le bouton "liste déroulante". Bon, ce que je voudrais, c'est supprimer le bouton "liste déroulante" et activer le user form par un clic droit sur la cellule D2 (celle ou doit apparâitre le résultat de la selection. Voila je pense que cette fois-ci je n'ai rien oublier Merci une fois de plsu de ton aide @+ Arnaud |
|
|
#21 (permalink) |
|
Guest
Messages: n/a
|
Re Arnaud
A mon avis tu ne fais absolument pas preuve d'esprit d'initiative... tu n'avais qu'à recopier le code que je m'évertue à te faire comprendre (même avec un JPG) dans le fichier d'Eric Renaud. Enfin puisqu'il faut te mâcher le travail voici le fichier sans bouton. J'espère que tu as suivi ce que j'ai fait..sinon tu n'arriveras pas à adapter ce truc dans ton travail... Relis bien mon post dans ce fil => 15-02-03 21:30... Au lieu d'une colonne : If Target.Column <> 1 Then Exit Sub Puisque que tu veux que ce soit la cellule "D2" Il faut mettre ceci à la place. If Target.Address <> "$D$2" Then Exit Sub Aller bon Courage et bon Dimanche @+Thierry |
|
|
#22 (permalink) |
|
Guest
Messages: n/a
|
Re Thierry
Un énorme grand merci, c'est exactement ce que je cherchais. Comme tu as pu le voir je ne suis pas trés doué mais je ne desespére pas d'y arriver un jour. Je pense pouvoir maintenant adapter ton exemple sans probléme pour mes besoins. Mais il y a encore plein de chose que je ne sais pas faire, comme par exemple faire un fichier dans le genre de celui que je t'ai envoyé. Pourrais-tu m'indiquer un tutorial ou quelque chose dans le même genre (à la rigueur un livre) pour faire des userform pas à pas et les intégrés dans les fichiers excel. En fait je vois à peu prés comment créer le userform (enfin presque) mais je ne vois pas encore trés bien comment on fait pour le lié au reste. Comme tu peu le voir, j'ai encore pas mal à apprendre alors merci pour ta patience et auusi celle des autres utilistaurs du forum @+ Arnaud |
|
|
#23 (permalink) |
|
Guest
Messages: n/a
|
Re Re Re Areu Areu Arnaud !
Ben je te donne déjà un conseil lis tous les Post de Fab... Tu fais une recherche par nom Fabrice... Tu regardes les plus anciens au plus récents... tu verras au début il posait des questions de base sur les UserForms... Et on lui a appris... Sinon ben il y a le livre de John Walkenbach en Pub sur ce site. Bon Dimanche @+Thierry |
|
|
#24 (permalink) |
|
Guest
Messages: n/a
|
Thierry
Encore merci, mais j'ai encore quelque chose à te demander. Voilà, j'ai essayé (mais si c'est vrai !! faut bien s'y mettre un jour) de créer un second USF sur le même modéle que celui que tu m'as envoyé et dans la même feuille. Pour le USF en lui même pas de probléme, je l'ai recréer en faisant des copier coller du précedent, idem pour le code en changeant les cellules cibles ( quand même !!) par contre pour le code suivant:Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Target.Address <> "$D$2" Then Exit Sub Cancel = True ListeDeroulante.Show End Sub la aussi j'ai fait un copier coller en changeant les référence cellules et nom du USF mais cela me marque une erreur de compilation. Ma question est donc: peut-on avoir deux ou plus USF dans une même feuille qui réagissent tous au clic droit. Si c'est oui, une fois de plus comment faire Merci d'avance, une fois de plus @+ Arnaud |
|
|
#25 (permalink) |
|
Guest
Messages: n/a
|
RE Arnaud,
Euf je pense que tu es en train (toi aussi) de monter une usine à gaz... Tu ne vas pas nous faire un Userform par cellule au moins ! (lol) Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Target.Address = "$D$2" Then Cancel = True ListeDeroulante1.Show End If If Target.Address = "$D$3" Then Cancel = True ListeDeroulante2.Show End If End Sub Maintenant si tu as plus de deux ou trois cellules vaut mieux changer de méthode avec Select Case... |
|
|
#26 (permalink) |
|
Guest
Messages: n/a
|
faut faire comme ceci (punaise la touche entré m'a envoyé le message !! lol)
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) Dim Adresse As String Adresse = Target.Address Select Case Adresse Case "$D$2": ListeDeroulante1.Show: Cancel = True Case "$D$3": ListeDeroulante2.Show: Cancel = True Case "$D$4": ListeDeroulante3.Show: Cancel = True Case "$D$5": ListeDeroulante4.Show: Cancel = True Case "$D$6": ListeDeroulante4.Show: Cancel = True Case "$D$7": ListeDeroulante6.Show: Cancel = True Case "$D$8": ListeDeroulante7.Show: Cancel = True Case "$D$9": ListeDeroulante8.Show: Cancel = True Case "$D$10": ListeDeroulante9.Show: Cancel = True Case "$D$11": ListeDeroulante10.Show: Cancel = True End Select End Sub Tu peux faire toutes les cellules comme ça !! (Mort de rire) J'ai une petite question à mon tour Arnaud... pourquoi ne pas utiliser les "Listes de Validation" si simple d'emploi et autrement plus pratique et lègeres à gérer ??? bonne soirée @+Thierry |
|
|
#27 (permalink) |
|
Guest
Messages: n/a
|
Usine à gaz, surement qui sait ?
Si j'osais select case c'est quoi ??? T'inquiétes pas je trouverais bien en cherchant un peu et en essayant de comprendre. Alors une fois de plus un grand merci à toi (bis, ter en fait j'ai perdu le compte) pour le temps que tu m'as accordé @+ Arnaud |
|
|
#28 (permalink) |
|
Guest
Messages: n/a
|
tu as le Select Case... le message a été posté too early !! (satanée touche entrée entre les ALT / TAB du VBA à IE ... Pafff Envoyé !! sans demandé !! lol
Enfin voilà ce qu'est Select Case... a noter que l'on peut écrire aussi comme ceci celà revient au même : Select Case Adresse Case "$D$2" ListeDeroulante1.Show Cancel = True Case "$D$3" ListeDeroulante2.Show Cancel = True 'etc etc.......... End Select Mais vu que je voulais te montrer un exemple en "masse" de Select Case il est utile d'écrire en une seule ligne avec le séparateur ":" Voilà ...... Alors amuse toi bien ! @+Thierry |
|
|
#29 (permalink) |
|
Guest
Messages: n/a
|
Merci une fois de plus à Thierry
J'ai déjà essayé les listes de validations mais mon probléme est au niveau des commentaires. Il faudrait que l'on puisse en même temps lire le commentaire et voir la liste. De plus les USF à plusieurs colonnes me seront plus utiles pour faire apparaître les formules dont le 2° terme dépend du 1° selectionné et ainsi de suite pour une formule à 11 termes. Le tout est sur un formulaire que l'on doit imprimer ensuite, d'où l'utilisation de USF et du clic droit Voilà en gros ce que je souhaite faire. Merci |
|
|
#30 (permalink) |
|
Guest
Messages: n/a
|
Bonjour, j'ai utilisé votre exemple (
Auteur: @+Thierry (195.78.6.---) Date: 15-02-03 12:29 Pièce jointe: USF_ComboBox-Gestion-List.zip (15k) ) sur une liste dans un fichier et tout marche très bien. J'ai voulu m'en servir sur une autre liste dans une autre feuille du même classeur et cette fois -ci, l'userform ce lance bien avec le bon contenu dans la combo, je peux supprimer normalement lmais mon pb est lors de l'ajout d'un élément. il me marque : " la méthode 'Range de l'objet'_Global a échoué" si je fait débogage, voici ce qui apparait Dim L As Integer Dim i As Integer Dim Nom As String Dim Msg As Byte Nom = ComboBox1.Value If Nom = "" Then Exit Sub Msg = MsgBox("Voulez-Vous Ajouter : " & Nom, vbYesNo, "fb40") If Msg = 6 Then L = Sheets("Collectivite").Range("A65536").End(xlUp).R ow + 1 Sheets("Collectivite").Range("A" & L).Value = Nom Sheets("Collectivite").Columns("A").Sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlGuess ' C EST LA LIGNE FOR EN DESSOUS QUI EST SURLIGNE For i = Range("Collectivite").End(xlUp).Row + 1 To 2 Step -1 If Range("a" & i) = Range("a" & i - 1) Then MsgBox "Doublon Détecté et Détruit : " & Range("a" & i - 1).Value, vbCritical, "fb40" Range("a" & i).ClearContents End If Next On Error Resume Next Sheets("Collectivite").Columns(1).SpecialCells(xlC ellTypeBlanks).EntireRow.Delete Ini Combo End If ComboBox1.SetFocus J'ai donc ce message d'erreur qui apparait mais il me rajoute qu'en même ma saisi dans la liste. A l'aide, merci. |
| ANNONCES | |
| Liens sociaux |
| Outils de la discussion | |
|
|