![]() |
|
Forum
|
|
|
#1 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
Bon dimanche au forum. (Chez moi il pleut grave, grrrrrr )Je coince pour créer une feuille par inputbox ou je choisis une colonne. J'ai mis des explications dans le fichier. J'ai déjà mis ce fichier pour Tophe hier mais je l'ai un peu amélioré et puis l'intitulé de son fil ne correspond plus à mon problème alors je me permets d'en ouvrir un nouveau. Pour tout ce qui de la mise en couleurs des cellules doublons, (plusieurs méthodes) ça à l'air de coller. C'est sur la création de la feuille "Liste" par inputbox que je rame. Merci à tous et bonne journée ![]() |
|
|
|
| ANNONCES | |||
|
|
|
|
#3 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
ReSalut Bébère, salut le forum.Je viens de regarder tes modifs Ca ne correspond pas à ce que je voudrais. J'ai expliquer dans ma v3 ci-dessus là ou je coince. J'essaye d'être plus clair. Le 2ème bouton OK du Usf me crée une feuille "Liste" ou sont copiés à partir de A2 tous les items différents d'une colonne de la feuille active. Pour l'instant, grâce à tes codes c'est la colonne A par défaut. Ca me convient si je veux la colonne A. Mais .......... J'ai mis une inputbox pour choisir une autre colonne, ca ne fonctionne pas. Ca me copie tjs les items de la A. Si par exemple je choisis la colonne C de la Feuille Donald. A partir de A2 dans la feuille Liste qui se crée, faudrait qu'apparraisse nom121,nom122 etc et qu'en A1 apparaisse Cuisine. C'est une histoire de variables trop complexe pour moi. La feuille peut restée nommée Liste, c'est pas gênant puisque j'ai fait en sorte qu'elle soit écrasée à chaque création de nouvelle liste sans doublons. Voila ce que j'essaye de faire pour l'instant. Ensuite, la cerise sur le gâteau serait que après avoir choisis C dans l'inputbox et fait OK, un msgbox apparraisse qui dise : vous avez choisi la colonne Cuisine de la feuille Donald, voulez vous crée la liste.... On verra plus tard si c'est possible. Si quelqu'un a une idée pour que la liste qui se crée soit bien dépendante de la colonne que je saisis dans l'inputbox ce serait super. Regarder bien ma v3, ce sera peut être plus clair. Merci à tous et bon dimanche. ![]() |
|
|
|
|
|
#4 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 598
|
Salut Papapaul, bebere,
Ton fichier papapaul, est très intéressant, j'ai donc bossé dessus en fonction de ta demande. Avec éventuellement une petite amélioration, tu peux choisir pour la feuille "Liste", toutes les colonnes que tu souhaite, une seule ou toutes A toi de voir si cela te convient, ah, j'allais oublier, je t'ai mis la cerise sur le gateau A+
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
|
|
|
|
|
|
#5 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
Salut Bruno,Je viens juste de jeter un oeil, à priori c'est exactement ca Une fois de plus tu me sauve la vie en 2 temps 3 mouvements, je suis complètement scié...Chapeau !!! Bruno el Maestro !!!! Oui, on pourrait imaginer que si je veux lister sans doublons par exemple 3 colonnes : les listes s'affichent sur la feuille liste successivement colonne A, B et C etc... Question subsidiaire : comment a tu fais pour mettre une espèce de cadre autour de la listbox du bas et que le texte "Colorier à la demande..." devienne comme une sorte de titre. Esthétiquement je trouve ça génial. J'étudie tout ça, et vous tiens au courant. Encore mille mercis, Amitiés à toi aussi à Bébère et au forum en général. La vie est belle avec XLD ![]() |
|
|
|
|
|
#6 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
Resalut,J'ai pas tout regarder avant de répondre. Pour lister plusieurs colonnes, ca le fait déjà comme j'aurais voulu (successivement colonne A, B etc..) Parfait, absolument parfait. Encore bravo ![]() |
|
|
|
|
|
#7 (permalink) |
|
XLDnaute Accro
Date d'inscription: mai 2005
Localisation: Tongres
Version Excel : Excel 2000 (PC)
Messages: 1 842
|
bonjour Bruno
papapaul choix avec inputbox,l'autre version(v2) il faut choisir dans la listbox à bientôt |
|
|
|
|
|
#8 (permalink) | ||
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 598
|
Re
Citation:
Citation:
Mais le fait de changer la propriété du TextBox, n'est pas commode Voilà, A+
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
|
||
|
|
|
|
|
#9 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
Resalut bébère, brunoCa marche aussi, merci. Tu as mis ca : 'rmq : elle est supprimée avant la fermeture du classeur Oui, mais si on crée une liste puis une autre sans fermer le classeur il fallait bien mettre quelque chose. Attention aussi, la demande de liste par inputbox fonctionne avec la feuille active et pas selon l'item surligné de la listbox2. Merci beaucoup à tous les deux. J'ai l'impression de faire des pas de géants même si ça me donne mal aux cheveux. Amitiés. ![]() |
|
|
|
|
|
#10 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
ReExcusez moi : Pour Bébère, pour que la listbox3 affiche bien les en-tête de colonnes il faut carrément supprimer sheets(2).activate du inilistbox3 Ca marche mieux. Pour Bruno : La copie des listes de colonnes sans doublons dans la feuille "Liste" fonctionne parfaitement bien sauf que ca le fait par colonne et pas sur la feuille entière. par exemple pour atelier de la feuille donald, (ca marche avec la méthode de bébère) je voudrais ne voir que Géo, il ne figure pas dans les autres colonnes et ne pas voir riri, fifi ou loulou, ils sont ailleurs dans la feuille, donc je les considèrent comme doublons. Promis, après je vous embête plus Amitiés ![]() |
|
|
|
|
|
#11 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 598
|
Re Papapaul,
Je n'avais pas compris cela comme ça Tu as juste 1 ligne à changer, dans ce cas là : Code:
Set Plage2 = .Range(.Cells(2, 1), .Cells(DerL, DerC)) 'définit la variable plage2 Voilà ![]()
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
Dernière modification par BrunoM45 ; 13/05/2007 à 20h59. |
|
|
|
|
|
#12 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
Re les amis,Je vais mettre tout ca au propre et je serais le plus heureux de tous, mais..... petite rectif Bruno l'écriture exacte est Set Plage2 = .Range(.Cells(2, DerL), .Cells(DerL, DerC)) Enfin je pense, merci encore et à très bientôt. Je me couche tôt, demain boulot Bonne soirée à tous |
|
|
|
|
|
#13 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
Je viens de vérifierTon écriture fonctionne bien avec la feuille Dalton Set Plage2 = .Range(.Cells(2, 1), .Cells(DerL, DerC)) Si je veux que ca marche avec la feuille Donald j'y arrive en mettant Set Plage2 = .Range(.Cells(2, derC), .Cells(DerL, DerC)) J'y comprends plus rien. ![]() |
|
|
|
|
|
#14 (permalink) |
|
XLDnaute Barbatruc
Date d'inscription: avril 2005
Localisation: MONTARGIS (la Venise du Gâtinais)
Version Excel : Excel 2003 (PC)
Messages: 2 598
|
Papapaul,
Tu es fatigué, ce soir Mon code comme je te l'ai donné fonctionne très bien Voici le code en entier Code:
Private Sub Label9_Click()
Dim L As Integer, Existe As Boolean
Dim Msg1 As String, Msg2 As String
Msg1 = "": Msg2 = ""
' Prépare le message pour les colonnes
For L = 0 To ListBox3.ListCount - 1
If ListBox3.Selected(L) = True Then
Msg1 = Msg1 & ListBox3.List(L) & ", "
End If
Next L
' Enlève la dernière virgule
Msg1 = Left(Msg1, Len(Msg1) - 2)
' Prépare le message pour la feuille
For L = 0 To ListBox2.ListCount - 1
If ListBox2.Selected(L) = True Then
Msg2 = "Pour la feuille : " & ListBox2.List(L) & " "
End If
Next L
Msg1 = "Vous avez choisi la/les colonne(s) : " & Msg1
' Pose la question
If MsgBox(Msg1 & vbCrLf & Msg2 & vbCrLf & "Voulez-vous créer la liste ?" _
, vbQuestion + vbYesNo, "CHOIX CORRECTE ?") = vbNo Then Exit Sub
'pour mettre une feuille liste "neuve"
'si elle existe déjà on la supprime et on en met une autre
For N = 1 To Sheets.Count
If Sheets(N).Name = "Liste" Then
Existe = True
Application.DisplayAlerts = False
Sheets("Liste").Delete
Exit For
End If
Next N
'
Sheets.Add before:=Sheets(1)
ActiveSheet.Name = ("Liste")
Dim nom As String
nom = ListBox2.Value
'déclaration des variables
Dim Cel1 As Range, Plage1 As Range
Dim Cel2 As Range, Plage2 As Range
Dim CountTot As Integer, DerL As Integer, DerC As Byte
Application.ScreenUpdating = False
With Worksheets(nom)
For L = 0 To ListBox3.ListCount - 1
If ListBox3.Selected(L) = True Then
'Dernière ligne remplie de la colonne A
DerL = .Range("A65536").End(xlUp).Row
' Dernière colonne remplie de la dernière ligne
DerC = .Cells(DerL, 255).End(xlToLeft).Column
' Définit la colonne en cours,sélectionnée dans Listbox3
Set Plage1 = .Range(.Cells(2, L + 1), .Cells(DerL, L + 1))
' Définit la zone de recherche des doublons
Set Plage2 = .Range(.Cells(2, 1), .Cells(DerL, DerC))
' Si la cellule de la feuille Liste n'est pas vide, on incrémente la colonne
C1 = Sheets("Liste").Range("IV2").End(xlToLeft).Column
If Sheets("Liste").Cells(1, C1) <> "" Then C1 = C1 + 1
'boucle sur toutes les cellules de la plage
For Each Cel1 In Plage1
CountTot = 0
CountTot = CountTot + Application.WorksheetFunction.CountIf(Plage2, "=" & Cel1.Value)
If CountTot = 1 Then
With Sheets("Liste")
L1 = Cells(65536, C1).End(xlUp).Row + 1
' Inscrit la catégorie
.Cells(1, C1).Value = Sheets(nom).Cells(1, L + 1)
.Cells(L1, C1).Value = Cel1.Value
End With
End If
Next Cel1 'prochaine cellule de la première boucle
End If
Next L
Application.ScreenUpdating = True
End With
End Sub
et on en reparle ...A+
__________________
Cordi@lement. La politesse est comme le zéro, qui, sans avoir de valeur en soi, en ajoute à toutes choses. ![]() VBA, vous ne savez pas comment faire ... Pensez à l'enregistreur de macro ! Menu -> Outils -> Macro -> Nouvelle macro ![]() Si vous souhaitez rejoindre le club des Supporters d'XLD ... c'est ICI Petite citation : C'est en XLDant que l'on devient XLDnaute Barbatruc ...
|
|
|
|
|
|
#15 (permalink) |
|
XLDnaute Impliqué
Date d'inscription: octobre 2006
Localisation: Caen
Version Excel : Excel XP (PC)
Messages: 583
|
Tu as raison,Ca fonctionne parfaitement, Simplement j'ai oublié que pour ca, il faut que les colonnes choisies d'une feuille aient le même nombre de lignes. (J'avais pris mon vrai fichier qu'est pas construit pareil) Bon, c'est vrai, je suis fatigué, Merci encore et @+ ![]() |
|
|
|
| ANNONCES | |
![]() |
| Liens sociaux |
| Outils de la discussion | |
|
|
Discussions similaires
|
||||
| Discussion | Auteur | Forum | Réponses | Dernier message |
| Combinaison: "GetDetailsOf" et Function "xxxx" ..(Chemin, Fichier, Feuille, Cellule)" | IFFIC | Forum Excel | 1 | 14/11/2006 22h05 |
| petite question : "passwordChar" avec une inputBox ? | Antoine | Forum Excel Downloads - Archives | 2 | 28/04/2004 16h49 |
| Recherche code VBA pour 'Fond de cellules" et "Doublons". | Quaisako | Forum Excel Downloads - Archives | 6 | 26/07/2003 18h50 |
| enlever le bouton "annuler" dans un inputBox | liline | Forum Excel Downloads - Archives | 2 | 23/06/2003 09h31 |
| Peut on exiger le type de valeur a saisir dans "InputBox" | Jare | Forum Excel Downloads - Archives | 5 | 27/10/2002 12h15 |