OL Mail speichern und Betreff kürzen auf 10 Zeiche

Hi Zusammen, habe aus dem Netz Makros, damit die in Outlook 2007 markierten Emails auf die Festplatte als .msg abgespeichert werden.

Die Mails werden mit dem Betreff gespeichert und davor wurde das Eingangsdatum gesetzt, dies funktioniert auch alles.

Wie kann ich nun sagen, dass die Mail folgendermapßen gespeichert werden soll: Datum + Betreff, aber nur die ersten 10 Buchstaben bzw. Zeichen des Betreffs`?

Hier der Code
Danke

Sub Mail\_Speichern(ByVal Mail As Object)

Dim Betreff As String
Dim absender As String
Dim SaveString As String
Dim AuftragsNr As String
Dim Eingangsdat As String



If TypeName(Mail) = "MailItem" Then
 absender = Mail.SenderName
 Betreff = Mail.Subject

 Eingangsdat = Format(Mail.ReceivedTime, "yyyy.mm.dd" & " - ")

' Eingangsdat = Mail.ReceivedTime


 'stellt eine 4 stellige Laufnummer voran, damit sich Mails mit gleichem Betreff und Absender nicht doppeln
 'die Formation ist zur besseren Sortierung im Explorer, bei mehr als 10000Mails einfach mehr Nullen voranstellen lassen

 ''' Betreff = Absender & " \_ " & Betreff & " empfangen am " & Eingangsdat & " " & Format$(Lfn, "00")


 '''Absender wird nicht benötigt steht in der Mail
 ''Betreff = Eingangsdat & " " & Betreff & " von " & Absender
 'Nur Datum und Betreff
 Betreff = Eingangsdat & " " & Betreff

 'Folgende Zeilen filtern alle möglichen Sonderzeichen raus, die nicht als Dateinamen auftreten dürfen
 Betreff = Replace(Betreff, ":", ".")
 Betreff = Replace(Betreff, "\*", "#")
 Betreff = Replace(Betreff, """", " ")
 Betreff = Replace(Betreff, "|", "#")
 Betreff = Replace(Betreff, "?", " ")
 Betreff = Replace(Betreff, "\>", "-")
 Betreff = Replace(Betreff, "= 255 Then
'Right(savestring,230)



 'und Speichern
 Mail.SaveAs SaveString, olMSG

''''## Hier code zum löschen der verschobenen Mails ## ''''

'Mail.Delete

End If
'Lfn = Lfn + 1
End Sub

Hi,

Wie kann ich nun sagen, dass die Mail folgendermapßen
gespeichert werden soll: Datum + Betreff, aber nur die ersten
10 Buchstaben bzw. Zeichen des Betreffs`?

Du hast im Code:

Betreff = Eingangsdat & " " & Betreff

Nimm da vom Betreff einfach nur die ersten zehn Zeichen.

Betreff = Eingangsdat & " " & Left(Betreff, 10)

Gruß Rainer

SUPER! PERFEKT, danke dir :wink: Hat geklappt :smile:=