Probleme listbox vba et excel
chacmhaal
-
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
pijaku Messages postés 13513 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
en fait j'ai fais un usf qui me permet de rechercher une chaine dans ma base de donnée client mais la dernière étape je bloque, je veux que la ligne qui m'interesse dans le resultat de ma recherche, (qui apparait donc dans ma listbox) soit cliquable et qu'en cliquant dessus cela me renvoie directement à la ligne concernée dans mon fichier excel 2007. je vous donne mon code, si vous pouviez me filer un coup de main sa serait sympa merci d'avance en tous cas:
Option Explicit
Dim I As Integer
Private Sub CommandButton1_Click()
Unload Me
End Sub
Private Sub Label12_Click()
End Sub
Private Sub Label2_Click()
End Sub
Private Sub Label5_Click()
UserForm1
End Sub
Private Sub Label7_Click()
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub RaisonSociale_Change()
Dim C As Range, Adresse As String, N As Integer
With Range("B:B")
Set C = .Find(RaisonSociale, LookAt:=xlPart)
If C Is Nothing Then Exit Sub
ListBox1.Clear
Adresse = C.Address
N = 0
Do
If C.Row <> 2 Then
ListBox1.AddItem C.Offset(0, -1), N
For I = 0 To 8
ListBox1.List(N, I + 1) = C.Offset(0, I)
Next I
N = N + 1
End If
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> Adresse
End With
End Sub
Private Sub UserForm_Initialize()
ListBox1.ColumnCount = 10
End Sub
en fait j'ai fais un usf qui me permet de rechercher une chaine dans ma base de donnée client mais la dernière étape je bloque, je veux que la ligne qui m'interesse dans le resultat de ma recherche, (qui apparait donc dans ma listbox) soit cliquable et qu'en cliquant dessus cela me renvoie directement à la ligne concernée dans mon fichier excel 2007. je vous donne mon code, si vous pouviez me filer un coup de main sa serait sympa merci d'avance en tous cas:
Option Explicit
Dim I As Integer
Private Sub CommandButton1_Click()
Unload Me
End Sub
Private Sub Label12_Click()
End Sub
Private Sub Label2_Click()
End Sub
Private Sub Label5_Click()
UserForm1
End Sub
Private Sub Label7_Click()
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub RaisonSociale_Change()
Dim C As Range, Adresse As String, N As Integer
With Range("B:B")
Set C = .Find(RaisonSociale, LookAt:=xlPart)
If C Is Nothing Then Exit Sub
ListBox1.Clear
Adresse = C.Address
N = 0
Do
If C.Row <> 2 Then
ListBox1.AddItem C.Offset(0, -1), N
For I = 0 To 8
ListBox1.List(N, I + 1) = C.Offset(0, I)
Next I
N = N + 1
End If
Set C = .FindNext(C)
Loop While Not C Is Nothing And C.Address <> Adresse
End With
End Sub
Private Sub UserForm_Initialize()
ListBox1.ColumnCount = 10
End Sub
A voir également:
- Probleme listbox vba et excel
- Word et excel gratuit - Guide
- Liste déroulante excel - Guide
- Si et ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
- Déplacer colonne excel - Guide
1 réponse
Bonjour,
Pour rendre "cliquable" une Listbox (entre guillemets car une listbox est toujours cliquable, du moins par défaut) il faut utiliser sa propriété click. Un peu comme ceci :
Cordialement,
-- Il n'y a rien de tel qu'une question idiote, seulement une réponse idiote. A.Einstein --
Pour rendre "cliquable" une Listbox (entre guillemets car une listbox est toujours cliquable, du moins par défaut) il faut utiliser sa propriété click. Un peu comme ceci :
Private Sub ListBox1_Click()
Dim Valeur_cherchee As String
Dim C As Range
Valeur_cherchee = ListBox1.Value
Set C = Cells.Find(Valeur_cherchee)
Range("A" & C.Row).Activate
End Sub--
Cordialement,
-- Il n'y a rien de tel qu'une question idiote, seulement une réponse idiote. A.Einstein --