Crée liaison avec un formulaire de Recherche et un formulaire d'envoi d'em
Bonjour,
J'ai 2 formulaire sur un fichier excel :
Un formulaire de recherche qui ce base sur le code vba de la serie video ''gestionnaire de location'' de la chaine youtube de ''Tutoderien'' :
https://youtu.be/X4dUx31_iys
voici le code :
Option Explicit
Private Sub effacer_Click()
ListBox1 = ""
Unload Me
Recherche.Show
End Sub
Private Sub fermer_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
End Sub
Private Sub source_Click()
Sheets("source").Activate
Range("A1").Select
End Sub
Private Sub txt_recherche_Change()
On Error Resume Next
Sheets("source").Range("S2") = "*" & Me.txt_recherche
Sheets("source").Range("tableaurecherche").AdvancedFilter Action:=xlFilterCopy, criteriarange _
:=Sheets("source").Range("S1:S2"), copytorange:=Sheets("source").Range("U1:AJ1"), unique:=False
Me.ListBox1.RowSource = "recherche_societe"
End Sub
Private Sub UserForm_Click()
End Sub
et un formulaire d'envoi email base sur cette video :
https://youtu.be/ODeid0HwhP8
voici le code :
Private Sub CommandButton1_Click()
If TextBox2.Text = "" Then
MsgBox "Email invalide ou vide", vbAbortRetryIgnore, "Ajouter l'email svp"
Exit Sub
End If
Dim outlookapp As Object
Dim mitem As MailItem
Set outlookapp = CreateObject("outlook.application")
Set outlookapp = New outlook.Application
Set mitem = outlookapp.CreateItem(olMailItem)
On Error Resume Next
With mitem
.To = Me.TextBox2.Value
.Subject = Me.TextBox3.Value
.Body = Me.ComboBox1.Value & vbCrLf & Me.TextBox4.Value
.Send
End With
Call CommandButton2_Click
End Sub
Private Sub CommandButton2_Click()
With Me
.TextBox1.Text = ""
.TextBox2.Text = ""
.TextBox3.Text = ""
.TextBox4.Text = ""
End With
Call UserForm_Initialize
End Sub
Private Sub Image1_Click()
End Sub
Private Sub Label1_Click()
End Sub
Private Sub Label2_Click()
End Sub
Private Sub Label3_Click()
End Sub
Private Sub TextBox1_Change()
Me.ComboBox1.Clear
rec = Me.TextBox1.Text
With Me.ComboBox1
.AddItem "Bonjour" & rec
.AddItem "Cher Monsieur"
.AddItem "Cher Madame"
.AddItem "Salutations" & rec
End With
End Sub
Private Sub TextBox4_Change()
End Sub
Private Sub UserForm_Initialize()
Me.ComboBox1.Clear
rec = Me.TextBox1.Text
With Me.ComboBox1
.AddItem "Bonjour" & rec
.AddItem "Cher Monsieur"
.AddItem "Cher Madame"
.AddItem "Salutations" & rec
End With
End Sub
Ma question est comment faire le lien entre ces 2 formulaire en sorte que quand je double click sur un resultat du formulaire de recherche,celui ci envoie directement les donnees de 2 cellules vers le formulaire de mailing,j'ai essaye de schématisé
J'ai fait des recherche et je sais que il faut faire "listbox1.selected" et j'ai aussi trouve ce lien :
https://support.microsoft.com/fr-ma/help/813150/how-to-determine-the-items-that-are-selected-in-a-listbox-control
https://docs.microsoft.com/en-us/office/vba/api/access.listbox.selected
Mais le problème c'est que je suis vraiment un débutant et je ne serais comment faire pour adapter le code vba pour obtenir le résultat souhaite,c'est pour cette raisons que j'ai crée cette nouvelle discussion afin que une bonne âme puisse me montrer comment faire.
voici le fichier excel :
J'ai essaye ca : ublic Sub CopySelected(ByRef recherche As Form)
Dim ctlSource As Control
Dim ctlDest As Control
Dim strItems As String
Dim intCurrentRow As Integer
Set ctlSource = Me!ListBox1
Set ctlDest = Email!TextBox1
For intCurrentRow = 0 To ctlSource.ListCount - 1
If ctlSource.Selected(intCurrentRow) Then
strItems = strItems & ctlSource.Column(0, _
intCurrentRow) & ";"
End If
Next intCurrentRow
' Reset destination control's RowSource property.
ctlDest.RowSource = ""
ctlDest.RowSource = strItems
Set ctlSource = Nothing
Set ctlDest = Nothing
End Sub
mais ca ne marche pas,ca me donne type defini par l'utilisateur indefini.