The problem with this is the part I want to run is a Private Sub. I have been reading and haven't found the proper way to assign a macro to run a private sub. Here is my code which I want to run from an icon:
Private Sub Output_Composite_Sto_Click()
On Error GoTo Output_Composit_Sto_Click_Error
Dim strline
Dim myOlApp, myNameSpace, myMailItem
Dim msgRTFBody As String
DoCmd.OutputTo acOutputReport, "Composite Morning Story", acFormatRTF, "\\cpu1025\grpdirs\EngTest\F100 INFO\Morning Story\morningstory.doc", True
Review_Morning_Stories:
Dim RetValue
RetValue = MsgBox("Ok To Send Morning Story?", vbOKCancel, "Attention"

If RetValue = vbOK Then
GoTo Email_Morning_Story
ElseIf RetValue = vbCancel Then
GoTo Output_Composit_Sto_Click_Exit
End If
Email_Morning_Story:
Open "\\cpu1025\grpdirs\EngTest\F100 INFO\Morning Story\morningstory.doc" For Input As #1
Do Until EOF(1)
Line Input #1, strline
msgRTFBody = msgRTFBody & strline
Loop
Close #1
Set myOlApp = CreateObject("Outlook.Application"

Set myNameSpace = myOlApp.GetNamespace("MAPI"

Set myMailItem = myOlApp.CreateItem(olMailItem)
With myMailItem
.To = "user@isp.com"
.Subject = "F100 Composite Morning Story " & DATE
.Body = msgRTFBody
.Send
End With
Set myMailItem = Nothing
Set myNameSpace = Nothing
Set myOlApp = Nothing
Output_Composit_Sto_Click_Exit:
Exit Sub
Output_Composit_Sto_Click_Error:
Select Case Err.Number
Case Else
MsgBox "Error: " & Err.Number & vbCrLf & Err.Description, , "Composite Morning Story"
Resume Output_Composit_Sto_Click_Exit
End Select
End Sub