全部,我试图将所选项目(或多个项目)的值从用户窗体传递到ThisOutlookSession,但无法传递字符串。感谢我可能会出错的地方。
我们的想法是使用txt文件中的引用列表填充列表框(工作正常),用户将从列表框中选择一个项目,然后该项目将附加到主题行的末尾即将发送的电子邮件。 (修改主题行的代码部分从下面省略。)
在ThisOutlookSession中:
Public subString As String
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
SubjectAdd.Show
[CODE OMITTED, but the gist of it is item.subject = item.subject & strstring]
End Sub
在SubjectAdd userform中:
Private Sub Append_Click()
Dim i As Long
Dim lngCount As Long
lngCount = 0
For i = 0 To MatterList.ListCount - 1
If MatterList.Selected(i) = True Then
lngCount = lngCount + 1
If lngCount = 1 Then
StrPicks = MatterList.List(i)
Else
StrPicks = StrPicks & " " & MatterList.List(i)
End If
End If
Next i
subString = StrPicks
Me.Hide
lbl_Exit:
Exit Sub
End Sub
答案 0 :(得分:0)
Public
变量应该有效
作为替代,使用Tag
object
UserForm
属性
在Append_Click()
Me.Hide
Me.Tag = StrPicks
然后在Application_ItemSend()
中,在任何
Unload SubjectAdd
放置以下内容
subject = item.subject & SubjectAdd.Tag