Cette source propose une manière simple de rechecher le numéro de telephone fixe ou mobile d'un collegue dans une entreprise, elle faite en VBA et utilise les formulaires d'Excel, Lisbox et conbobox avec possibilité d'ajouter, modifier ou supprimer un enrégistrement.
Source / Exemple :
Private Sub fermer_Click()
With ActiveWorkbook
.RunAutoMacros xlAutoClose
.Close
End With
End Sub
Private Sub Label_Rt_Menu_Click()
Unload Me
us1.Show modeless
End Sub
Private Sub OptionCell_Click()
filtre
End Sub
Private Sub OptionEmail_Click()
filtre
End Sub
Private Sub OptionExt_Click()
filtre
End Sub
Private Sub UserForm_initialize()
Worksheets("Famille").Activate
[b3:i1000].Sort key1:=[b3] ' Tri la BD
' Me.ChoixNom.List = Application.Transpose(Range([b3], [B65000].End(xlUp)))
End Sub
Private Sub nom_Change()
filtre
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub filtre()
If Me.Frame.Controls(0) = True Then
a = 1
ElseIf Me.Frame.Controls(1) = True Then
a = 2
Else: a = 3
End If
Select Case a
Case 1
Me.TextBox5 = "Extention Number"
Set c = Range("b:b").Find("*" & Me.nom & "*", LookIn:=xlValues)
If Not c Is Nothing Then
premier = c.Address
i = 0
Me.ListBoxdon.Clear
Do
Me.ListBoxdon.AddItem
Me.ListBoxdon.List(i, 0) = c.Offset(0, 0).Value ' code
Me.ListBoxdon.List(i, 1) = c.Offset(0, 1).Value ' Nom
Me.ListBoxdon.List(i, 2) = c.Offset(0, 2).Value ' Fonction
Me.ListBoxdon.List(i, 3) = c.Offset(0, 4).Value ' Adresse
Set c = Range("b:b").FindNext(c)
i = i + 1
Loop While Not c Is Nothing And c.Address <> premier
End If
Case 2
Me.TextBox5 = "Cell Number"
Set c = Range("b:b").Find("*" & Me.nom & "*", LookIn:=xlValues)
If Not c Is Nothing Then
premier = c.Address
i = 0
Me.ListBoxdon.Clear
Do
Me.ListBoxdon.AddItem
Me.ListBoxdon.List(i, 0) = c.Offset(0, 0).Value ' code
Me.ListBoxdon.List(i, 1) = c.Offset(0, 1).Value ' Nom
Me.ListBoxdon.List(i, 2) = c.Offset(0, 2).Value ' Fonction
Me.ListBoxdon.List(i, 3) = c.Offset(0, 5).Value ' Adresse
Set c = Range("b:b").FindNext(c)
i = i + 1
Loop While Not c Is Nothing And c.Address <> premier
End If
Case Else
Me.TextBox5 = "E-Mail "
Set c = Range("b:b").Find("*" & Me.nom & "*", LookIn:=xlValues)
If Not c Is Nothing Then
premier = c.Address
i = 0
Me.ListBoxdon.Clear
Do
Me.ListBoxdon.AddItem
Me.ListBoxdon.List(i, 0) = c.Offset(0, 0).Value ' code
Me.ListBoxdon.List(i, 1) = c.Offset(0, 1).Value ' Nom
Me.ListBoxdon.List(i, 2) = c.Offset(0, 2).Value ' Fonction
Me.ListBoxdon.List(i, 3) = c.Offset(0, 6).Value ' Adresse
Set c = Range("b:b").FindNext(c)
i = i + 1
Loop While Not c Is Nothing And c.Address <> premier
End If
End Select
End Sub
Private Sub UserForm_Terminate()
With ActiveWorkbook
.RunAutoMacros xlAutoClose
.Close
End With
End Sub
Conclusion :
Commencez par desactiver la securité des macro en excel, la suite sera facile
Mot de Passee pour la modification et l'ajout : "nizebel"
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.