Come assegnare più valori di riepilogo di elenchi a una variabile e inserire quelle in e-mail "a" campo
-
21-12-2019 - |
Domanda
Sto cercando di essere in grado di selezionare più valori in due caselle di riepilogo e assegnare a due variabili separate.Voglio quindi prendere quelle variabili contenenti le selezioni e generare un'e-mail con i contenuti variabili che popolano il campo "a" in un'e-mail di Outlook.In questo momento sto ottenendo un errore di run-time 94 - uso non valido di null.
Grazie per tutto il tuo aiuto!
Dim EAddress, MAddress As String
Public Sub UserForm_Initialize()
Emailfrm.EmpEmaillb.RowSource = "Searched_Employee_Email"
Emailfrm.ManagerEmaillb.RowSource = "Searched_Manager_Email"
End Sub
Public Sub Email_Click()
Dim OLobjMsg, NewMsg As Object
EAddress = Emailfrm.EmpEmaillb.Value
MAddress = Emailfrm.ManagerEmaillb.Value
Set objMsg = CreateObject("Outlook.Application")
objMsg.Session.Logon
Set NewMsg = objMsg.CreateItem(0)
With NewMsg
.To = EAddress & MAddress
.Subject = "BT Employee Database Inquiry Email"
'.Body = "Have a great weekend!"
End With
Unload Me
NewMsg.Display
End Sub
. Soluzione
Asumazione che le tue caselle di riepilogo contengono indirizzi e-mail validi, propongo di
- .
- Definisci
ListBox1.MultiSelect = fmMultiSelectMulti
- Selezionare più indirizzi di posta usando Ctrl-click
- Concatena tutti gli indirizzi selezionati dalla casella di riepilogo in una singola stringa, ad esempio.
_
Private Sub CommandButton1_Click()
Dim LBCnt As Integer, AllAddr As String
AllAddr = ""
For LBCnt = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(LBCnt) Then
If AllAddr = "" Then
AllAddr = ListBox1.List(LBCnt)
Else
AllAddr = AllAddr & ";" & ListBox1.List(LBCnt)
End If
End If
Next LBCnt
Debug.Print AllAddr
End Sub
.
- .
- Ripeti per la 2nd listbox ...
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow