liste dans inputbox

flo2002

XLDnaute Impliqué
Bonjour le forum!
J'espere que tout le monde a passé un trés bon week end!

Mon premier problème cette semaine estde mettre une liste déroulante dans une macro qui fait apparaitre un inputbox.
Est ce possible?

Voici le code de base:

VotreNom = InputBox(' Entrer Le Nom ')
ActiveCell.Value = VotreNom

Merci d'avance!
 

flo2002

XLDnaute Impliqué
En faite ce que je voudrais c'est que l'on puisse choisir ce qui va aller ce coller en fin de colonne.
Voici le code original qui ne me permet pas de choisir:

Sheets('x').Select
Dim VotreNom As String
Range('B200').Select
Selection.End(xlUp).Offset(1, 0).Select
VotreNom = InputBox(' Entrer Le Nom ')
ActiveCell.Value = VotreNom
Columns('B:B').Select
Range('B200').Activate
Selection.Sort Key1:=Range('B2'), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom

je dois donc changer l'input box mais je ne sais pas comment faire et quoi mettre?
 

PascalXLD

XLDnaute Barbatruc
Modérateur
Re

Bon un petit exemple en pièce jointe

Par contre j'ai repris ton code tel quel car pas le temps mais il faudrait peut-être l'améliorer pour eviter les select inutiles. [file name=Classeur1_20060509092656.zip size=10044]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Classeur1_20060509092656.zip[/file]
 

Pièces jointes

  • Classeur1_20060509092656.zip
    9.8 KB · Affichages: 87

PascalXLD

XLDnaute Barbatruc
Modérateur
RE

Voici ce que dit l'aide

'Si l'instruction Option Explicit apparaît dans un module, vous devez déclarer explicitement toutes les variables à l'aide des instructions Dim, Private, Public, ReDim ou Static. Si vous tentez d'utiliser un nom de variable non déclarée, une erreur se produit à la compilation.'
 

flo2002

XLDnaute Impliqué
Option Explicit



Private Sub CommandButton1_Click()
If Me.ComboBox1.ListIndex = -1 Then
MsgBox 'Solution'
Exit Sub
End If
ActiveCell.Value = Me.ComboBox1.Value
Columns('b:b').Select
Range('b300').Activate
Selection.Sort Key1:=Range('b9'), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom
Unload Me
End Sub

Private Sub UserForm_Initialize()
Dim Ligne As Integer, x As Integer
Ligne = Sheets('AFU').Range('A65536').End(xlUp).Row
For x = 1 To Ligne
Me.ComboBox1.AddItem Sheets('AFU').Range('E' & x)
Next
End Sub

Voici le code que j'utilise. Cependant je me rend compte que je dois lui dire d'entrer une donnée en b à la fin de c. Il sait faire ca?
 

PascalXLD

XLDnaute Barbatruc
Modérateur
RE

remplace

ActiveCell.Value = Me.ComboBox1.Value

par

Range('B' & range('C65536').end(xlup).row) = Me.ComboBox1.Value

Par contre ensuite tu tries que la colonne B qui aura donc un décalage par rapport aux données de la C ????
 

Discussions similaires

Réponses
2
Affichages
328

Statistiques des forums

Discussions
312 505
Messages
2 089 066
Membres
104 015
dernier inscrit
kkgk