Hallo zusammen
Ich hab eine Abfrage, die tipp topp funktioniert. Das Feld Anrede ist ein Dropdown (Herr, Frau, etc.)
Nun kopiere ich sämtliche Daten daraus mittels diesem Code:
DoCmd.RunSQL "SELECT * INTO [MailversandArtikel] FROM [abfKundeninteresseMarke];"
Das funktioniert wunderbar und damit lässt sich dann weiterarbeiten. Nun hab ich aber das Problem, dass beim Dropdown dann die ID und nicht der Wert kopiert wird.
Kann ich das irgendwie ändern?
Hallo,
das mit der ID ist richtig. Es wäre falsch den Wert zu kopieren. Über eine Abfrage kommst Du immer an den Klartext.
Es stellt sich auch die Frage, warum Du kopierst, Du hast ja die Daten schon über die Abfrage, warum dann noch mal (redundant) kopieren ?.
Hallo Klaus
Ich hab gerade gesehen, dass Problem woanders liegt.
Mit dem Befehl "SELECT Vorname, Nachname, Mailadresse, Anrede " & _
" FROM abfKundeninteresseWG_Mailsenden"
fülle ich Daten aus der Abfrage in eine Mail. Nur zeigts da bei Anrede die ID und nicht die eigentliche Anrede an. Kann man das irgendwie änder? Irgendwie mit [tblAnrede].[Anrede]?
der ganze Code, mit dem ich Mails erstelle, falls das was nützt:
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim emailTo As String
Dim emailSubject As String
Dim emailText As String
Dim sAttachment As String
Dim outApp As Outlook.Application
Dim outMail As Outlook.MailItem
Dim outlookStarted As Boolean
On Error Resume Next
Set outApp = GetObject(, "Outlook.Application")
On Error GoTo 0
If outApp Is Nothing Then
Set outApp = CreateObject("Outlook.Application")
outlookStarted = True
End If
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT Vorname, Nachname, Mailadresse, Anrede " & _
" FROM abfKundeninteresse_Mailsenden")
Do Until rs.EOF
emailTo = rs.Fields("Mailadresse").Value
emailSubject = "Denner Aktion"
emailText = Trim("Guten Tag " & " " & rs.Fields("Anrede").Value & " " & rs.Fields("Nachname").Value) & vbCrLf & vbCrLf
emailText = emailText & _
"Wir haben eine Aktion, welche Sie interessieren könnte." & vbCrLf & _
"Alle Details dazu haben wir Ihnen in einem PDF zusammengefasst und dieser E-Mail angehängt." & vbCrLf & vbCrLf & _
"Wir freuen, Sie hoffentlich bald wieder in unserer Filiale begrüssen zu dürfen und stehen Ihnen bei Fragen gerne zur Verfügung." & vbCrLf & vbCrLf & _
"Mit den besten Grüssen" & vbCrLf & _
"Ihr Denner Team"
Set outMail = outApp.CreateItem(olMailItem)
outMail.To = emailTo
outMail.Subject = emailSubject
outMail.Body = emailText
outMail.Attachments.Add ("E:\SOFTWARE\KUNDENINTERESSE\VORLAGE DENNER AKTION\AKTUELLE DENNER AKTION.pdf")
outMail.Display
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
Set db = Nothing
If outlookStarted Then
outApp.Quit
End If
Set outMail = Nothing
Set outApp = Nothing
Hallo,
nimm in die Abfrage die Tabelle mit der Anrede mit dazu, dann hast du auch den Klartext zur Verfügung.
PS:
Vermutlich ist die Anrede bei Dir als Nachschlagefeld in der Tabelle definiert. Davon solltest Du Abstand nehmen und ein ganz normale Feld daraus machen, das auch die ID anzeigt und nicht den Klartext.