Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

Msg box wenn keine Email Adresse vorhanden

Begonnen von boehnli01, März 09, 2011, 20:53:59

⏪ vorheriges - nächstes ⏩

boehnli01

Hallo

Ich habe eine VBA prodezur mit der ich aus einem UFO Email versenden kann.  Die Emailsadressen sind in einer Tabelle "tlb_vendormailing_terminliste" oder im form "frm_vendormailing" hinterlegt. Nun möchte ich eine Fehlermeldung (msgbox) im Falle das keine Email Adresse hinterlegt ist.

Habe verschiedene Versuche gestartet ohne Erfolg.

Könnt ihr da bitte helfen.

Danke und Gruss
Cédric

database

Hallo,

ZitatIch habe eine VBA prodezur mit der ich aus einem UFO Email versenden kann
OK, zeig die mal her bitte.

ZitatDie Emailsadressen sind in einer Tabelle "tlb_vendormailing_terminliste" oder im form "frm_vendormailing" hinterlegt
Naja, wenn das Formular auf der Tabelle aufbaut, dann nicht 'oder im Form frm_Vendormailing' ... sondern UND im Form ...
Wenn sie aber entweder hier oder da stehen können wird's sicher SEHR schwer werden da was Vernünftiges zu realisieren.

DF6GL

Hallo,


z. B.:


Sub xxxxx()
.
If Isnull( Me!EMailAdresse) then  
Msgbox "Keine EMailadresse vorhanden"
Exit Sub
End if
.
.
End Sub

boehnli01

Die Prozedur sieht so aus, aber ehrlich gesagt habe diese einfach kopiert und ein bisschen angepasst. Meine VBA Kenntnisse sind sehr limitier.
Private Sub Email_Click()


    If Me.Email = False Then Exit Sub
           
    If DCount("FixVendor", "tlb_vendormailing_terminliste", "FixVendor = '" & Forms![frm_Terminliste]![FixVendor] & "'") = 0 Then
    MsgBox "Keine Email Daten vorhanden. Bitte Email im *Vendor Email Directory* ergänzen"
    Let Me.Email = 0
    Exit Sub
    Debug.Print DCount("FixVendor", "tlb_vendormailing_terminliste", "FixVendor = '" & Forms![frm_Terminliste]![FixVendor] & "'")
    End If
   
         
    If MsgBox("Is your Lotus Notes Mail Client up and running?", vbYesNo, "Lotus Notes?") = vbNo Then
        Let Me.Email = 0
        Exit Sub
    End If


   
    Dim mto As String, mcc1 As String, mcc2 As String, msj As String, mre As String
   
    mto = DLookup("Email", "tlb_vendormailing_terminliste", "FixVendor = '" & Forms![frm_Terminliste]![FixVendor] & "'")
    'mcc1 = "bitte entfernen"
    'mcc2 = DLookup("mail_cc2", "tab mailing", "mail_pa = '" & Forms![for tasks]![req_task_ocntry] & "'")
    msj = DLookup("Emailsubject", "tlb_vendormailing_terminliste", "FixVendor = '" & Forms![frm_Terminliste]![FixVendor] & "'") & "" & Forms![frm_Terminliste]![PurchDoc] & ": " & Forms![frm_Terminliste]![Dlvdatenew] & " / " & Forms![frm_Terminliste]![NVendor] & Chr$(10) & Forms![frm_Terminliste]![Mat] & Forms![frm_Terminliste]![Shtext]
   'mre = DLookup("EmailAbsender", "tlb_vendorabsender", "MRP = '" & Forms![frm_Terminliste]![MRP] & "'")
       
    Dim onum As Double, olin As Double, otyp As String, ogcd As String, oqty As Double, osht As String, octy As String, oact As String, oavl As String, odrc As String, ocom As String
   
    m0 = "Dear Sirs " & Chr$(10) & Chr$(10) & "Below PO has not arrived as planned. " & "Please confirm delivery date of requested PO ASAP." & Chr$(10) & Chr$(10) & "******* REQUEST DETAILS ********" & Chr$(10) & Chr$(10)
    m1 = "Purchase Order: " & Chr$(9) & Chr$(9) & Chr$(9) & Forms![frm_Terminliste]![PurchDoc] & Chr$(10)
    m2 = "Order Quantity [kg]: " & Chr$(9) & Chr$(9) & Chr$(9) & Forms![frm_Terminliste]![Qty] & Chr$(10)
    m3 = "Forseen Delivery Date: " & Chr$(9) & Chr$(9) & Chr$(9) & Forms![frm_Terminliste]![Dlvdatenew] & Chr$(10)
    m4 = "Item:" & Chr$(9) & Chr$(9) & Chr$(9) & Chr$(9) & Chr$(9) & Forms![frm_Terminliste]![Mat] & " / " & Forms![frm_Terminliste]![Shtext] & Chr$(10)
    m5 = Chr$(10) & Chr$(10) & "Thanks for your support!" & Chr$(10) & Chr$(10)
   
    m99 = m0 & m1 & m2 & m3 & m4 & m5
   
    DoCmd.SendObject acSendNoObject, , , mto, , , msj, m99, -1
   
    Me.Comment = "Email (Terminkontrolle) sent to: " & mto
    Me.User = GetNTUser()
    Me.Date = Date
   
    Exit Sub

DF6GL

Hallo,

wenn wir davon ausgehen können , dass die Email-Adresse hiermit ausgelesen wird:

   mto = DLookup("Email", "tlb_vendormailing_terminliste", "FixVendor = '" & Forms![frm_Terminliste]![FixVendor] & "'")

und "mto" den Datentyp Variant besitzt, dann halt so:


  mto = DLookup("Email", "tlb_vendormailing_terminliste", "FixVendor = '" & Forms![frm_Terminliste]![FixVendor] & "'")
if isnull(mto) then
Msgbox " Nix da"
exit Sub
End If
.
.

boehnli01

Ich erhalte folgend error msg: runtime error '94'  invalid us of null

imp666

Ich würde einfach mto abprüfen auf:

    If IsNull(mto) Then ... ' (keine Adresse)
    If mto = "" Then ... ' (leerer String, also auch keine Adresse)
    If (Not InStr(1, mto, "@")) Or (Not InStr(1, mto, ".")) Then ... ' (in einer Mailadresse muss mind. ein Punkt und mind. ein @ vorkommen)


Bei "..." musst du natürlich noch deine Aktion einfügen

DF6GL

Hallo,

@boehnli01:


PS:  sehe gerade, dass "mto" vom Datentyp String (und nicht wie angenommen Datentyp Variant) ist. Dann muss es so lauten:



Dim varmto as Variant

varmto = DLookup("Email", "tlb_vendormailing_terminliste", "FixVendor = '" & Forms![frm_Terminliste]![FixVendor] & "'")

If Isnull(varmto) then
Msgbox " Nix da"
Exit Sub
Else
mto=varmto
End If
.
.

boehnli01

@ DF6GL: super. es hat geklappt. vielen dank an alle für die hilfe.