Problem bei "Attachments.Add" Pfad einlesen
#1
Hallo zusammen,
brauch Hilfe, bei nachfolgendem Problem. Aus UF1 öffne ich UF2. Dort sind CMB3 und CMB2 (siehe Code). Bei der UF2 werden die Daten aus UF1 eingelesen. Der CMB2 dient dazu den Dateianhang, der in TextBox5 dargestellt wird, auszuwählen. Was ich erreichen möchte ist folgendes, sollte kein Dateianhang ausgewählt werden, sende trotzdem. Ich hatte geglaubt eine If Anweisung benutzen zu können, es kommt aber zu Fehlermeldung "Pfad nicht gefunden. Meine Frage ist, wie kann ich das umgehen, dass wenn kein Anhang gewählt wurde, dass ohne Fehlermeldung der Inhalt der TextBoxen gemailt wird.
Danke für Eure Hilfe schon mal Danke im Voraus. Thumps_up

Code:
Private Sub CommandButton3_Click()
    Dim olApp As Object
    Dim Warnung As Variant
    Set olApp = CreateObject("Outlook.Application")
    With olApp.CreateItem(0)
        'Empfänger
        .To = Me.TextBox2.Value
        'Betreff
        .Subject = Me.TextBox3.Value
        'Nachricht
        .Body = Me.ComboBox1.Value & vbCrLf & Me.TextBox4.Value & vbCrLf & Me.ComboBox2.Value & vbCrLf & Me.TextBox1.Value
        'Lesebestätigung aus
        .ReadReceiptRequested = False
        'Dateianhang
        .Attachments.Add (Me.TextBox5.Value)
           If TextBox5.Value = 0 Then
               MsgBox ("Senden ohne Anhang?"), vbYesNoCancel
           End If
         .display
'         .Send
    End With
    Set olApp = Nothing
    Unload Me
'     frm_Kundenliste.Show
End Sub

Private Sub CommandButton2_Click()
 Dim myfilepath As String
 myfilepath = Application.GetOpenFilename()
 TextBox5.Text = myfilepath
End Sub
Top
#2
Hallo!

Das liegt daran dass Du erst den Anhang setzt und danach erst nachfragst.

Private Sub CommandButton3_Click()
     Dim olApp As Object
     Dim Warnung As Variant
     
                  
     Set olApp = CreateObject("Outlook.Application")
     With olApp.CreateItem(0)
         .To = Me.TextBox2.Value
         .Subject = Me.TextBox3.Value
         .Body = Me.ComboBox1.Value & vbCrLf & Me.TextBox4.Value & vbCrLf & Me.ComboBox2.Value & vbCrLf & Me.TextBox1.Value
         .ReadReceiptRequested = False

       If Me.TextBox5.Value <> "" Then _
         .Attachments.Add (Me.TextBox5.Value)
         .display
 
     End With

     Unload Me

 End Sub


VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


Gruß, René
Top
#3
Hallo René,
Du bist ja schneller als die Polizei erlaubt. Danke für deine Hilfe. Passt wie immer bei dir. :100:
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste