Upps, hast Du auch einen Namen?
Also dafür, dass Du gerade mal Anfänger bist stellst Du schon sehr hohe Anforderungen in einer einzigen Frage.
Zum Öffnen deines E-Mail_Programms kannste mal untenstehenden Code ausprobieren. Aber deine restlichen Anforderungen sind schon viele Dinge gleichzeitig:
Um einen Accessbericht im PDF-Format anzuhängen müsstest Du zuerst mal den Accessbericht als PDF abspeichern. Also zuerst einen PDF-Drucker einrichten und Access erzählen welcher das ist. Dann den Druckbefehl erteilen und sagen welchen Bericht du drucken willst, dann das PDF irgendwo unter irgendeinem Namen speichern, dann unter diesem Namen als Mailanhang anhängen.
Dann Die Abfrage mit den Mailadressen aufrufen und die alle in BBC eintragen.
Also fang erstmal an selbst zu probieren, hier die API, die öffnet vermutlich jedes Mailproggi:
Die Deklaration bitte in ein Modul kopieren, oben hin, deshalb habe ich Dir Option Compare Database dringelassen.
Option Compare Database
Option Explicit
Public Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Dann den Code zum öffnen und eintragen von Text in deine mail, den kopierst du in dein Formular, bei mir hinter einem Button namens E_mail beim Klicken:
Private Sub E_mail_Click()
On Error GoTo Err_E_mail_Click
Dim Str As String
Str = "mailto:info@supportnet.de?" _
& "subject=Dein_Betreff&body=" & "Dein_Text"
ShellExecute Me.hwnd, vbNullString, Str, vbNullString, vbNullString, 0
Exit_E_mail_Click:
Exit Sub
Err_E_mail_Click:
MsgBox Err.Description
Resume Exit_E_mail_Click
End Sub
Gruß Marie