Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Nur bestimmte Anhänge speichern

Frage Microsoft Outlook & Mail

Mitglied: Mephisti

Mephisti (Level 1) - Jetzt verbinden

28.02.2011, aktualisiert 09:26 Uhr, 3755 Aufrufe, 5 Kommentare

Hallo Allerseites,

ich bastel gerade an einem Script herum, um nur bestimmte Mailanhänge im Dateisystem abzuspeichern.
Lasse ich die Einschränkung weg funktioniert alles tadellos. Versuche ich allerdings den Dateityp der Anlage auf pdf zu reduzieren (and LCase(Right(Item.FileName, 4)) = ".pdf") komme ich über einen Laufzeitfehler 91 nicht hinaus ... Objekt oder Withblockvariable nicht definiert.

Danke für Eure Hilfe.

Gruß Mephisti

01.
Private Sub myOlItems_ItemAdd(ByVal Item As Object) 
02.
  Const sPfad  As String = "C:\Daten\Outlook-Anhang" 
03.
     
04.
    Dim iAttachCnt As Integer 
05.
    Dim i As Integer 
06.
    Dim myItem As Outlook.MailItem 
07.
    Dim DateFolderPath As String 
08.
    Dim fso As Object 
09.
        
10.
    DateFolderPath = sPfad & "\" & Format(Date, "dd-mm-yyyy") 
11.
    Set fso = CreateObject("Scripting.FileSystemObject") 
12.
     
13.
    If Not fso.FolderExists(sPfad) Then 
14.
        fso.CreateFolder sPfad 
15.
    End If 
16.
 
17.
    If Not fso.FolderExists(DateFolderPath) Then 
18.
        fso.CreateFolder DateFolderPath 
19.
    End If 
20.
     
21.
    If TypeName(Item) = "MailItem" Then 
22.
    With Item.Attachments 
23.
      iAttachCnt = .Count 
24.
      If iAttachCnt > 0 Then 
25.
       'For i = 1 To iAttachCnt then <--- Mit dieser Variante werden alle Anlagen abgespeichert, ist aber nicht Ziel 
26.
        For i = 1 To iAttachCnt and LCase(Right(Item.FileName, 4)) = ".pdf" Then <--- Hier kommt der Laufzeitfehler 91 
27.
          .Item(i).SaveAsFile DateFolderPath & "\" & .Item(i).FileName 
28.
        Next i 
29.
      End If 
30.
    End With 
31.
  End If 
32.
  End Sub
[Edit Biber] Codeformatierung [/Edit]
Mitglied: StefanKittel
28.02.2011 um 09:14 Uhr
Moin,

wo wird denn Item.FileName dem Index zugeordnet?

müßte das nicht so sein:

01.
For i = 1 To iAttachCnt then 
02.
  if (LCase(Right(.Item(i).FileName, 4)) = ".pdf") then 
03.
    .Item(i).SaveAsFile DateFolderPath & "\" & .Item(i).FileName 
04.
  end if 
05.
Next i
Stefan

PS: nicht getestet!
Bitte warten ..
Mitglied: bastla
28.02.2011 um 09:27 Uhr
Hallo Mephisti!

Das ließe sich etwas kompakter formulieren (und schöner formatiert posten ):
01.
... 
02.
If TypeName(Item) = "MailItem" Then 
03.
    With Item.Attachments 
04.
        For i = 1 To .Count 'wenn .Count < 1 wird die Schleife ohnehin übersprungen 
05.
            If LCase(Right(.Item(i).FileName, 4)) = ".pdf" Then .Item(i).SaveAsFile DateFolderPath & "\" & .Item(i).FileName 
06.
        Next 
07.
    End With 
08.
End If
Alternativ sollte auch
01.
... 
02.
If TypeName(Item) = "MailItem" Then 
03.
    For Each Attach In Item.Attachments 
04.
        File = Attach.FileName 
05.
        If LCase(Right(File, 4)) = ".pdf" Then Attach.SaveAsFile DateFolderPath & "\" & File 
06.
    Next 
07.
End If
funktionieren - das Testen muss ich allerdings Dir überlassen ...

Grüße
bastla
Bitte warten ..
Mitglied: Mephisti
28.02.2011 um 09:33 Uhr
Hallo Bastla,
hallo Stephan,

werd eure beiden Vorschläge testen, Ergebnis folgt.
Danke schon mal im voraus.

Gruß
Mephisti
Bitte warten ..
Mitglied: Biber
28.02.2011 um 09:35 Uhr
Moin Mephisti,

wenn es etwas gibt, was ich noch mehr hasse als Montage...
-> Dann sind es Montags-Beiträge mit Programmschnipseln ohne Codeformatierung.

Dein Fauxpas in diesem Codefragment:

  • Du hast doch schon in Zeile 22 gesagt "With Item.Attachment"
  • In der FOR i=1 TO... -Konstruktion sprichst du aber nicht ".(i).FileName" (==Item.Attachment(i).Filename) an, sondern ein "Item.Filename". Das gibt es aber nicht.
  • Also ersetze "LCase(Right(Item.(i).FileName, 4))" durch "LCase(Right(.(i).FileName, 4))".

[Ebenfalls ungetestet]
Grüße
Biber

[Edit] Montags bin ich immer vieeeel zu langsam....[/Edit]
Bitte warten ..
Mitglied: Mephisti
28.02.2011 um 17:44 Uhr
Hallo Bastla,

dein erster Tipp hatte schon das gewünschte erreicht.
Besten Dank auch an alle anderen für eure Hilfe!

Gruß
Mephisti
Bitte warten ..
Ähnliche Inhalte
Outlook & Mail
Email Anhänge speichern VB Script aber nur bestimmte Dateitypen (Outlook)
gelöst Frage von LindeUnimogOutlook & Mail4 Kommentare

Hallo, Wir würden gerne nur bestimmte Email Anhänge speichern. Mit diesem Script unten klappt es zwar ganz gut aber ...

VB for Applications
Outlook VBA - Anhang autom. speichern
gelöst Frage von sokraTonisVB for Applications8 Kommentare

Hallo, ich bekomme an eine bestimmte E-Mail-Adresse immer wieder Nachrichten mit einem Anhang. Der Name vom Anhang ist immer ...

Batch & Shell
Wie speichere ich von einer "Grundbatchdatei" einen bestimmten Wert?
gelöst Frage von IchBins01000010Batch & Shell5 Kommentare

Ich Bräuchte mal Hilfe (logisch) Ich Bin neu in der ganzen Programmierwelt und hänge gerade an einer Sache. Ich ...

Ubuntu
Schattenkopien eines bestimmten Ordners speichern
gelöst Frage von BrombaermetzgerUbuntu2 Kommentare

Hallo liebe Community, Dachte ich melde mich hier endlich mal an. Ich habe ein Problem, wo ich mit meinem ...

Neue Wissensbeiträge
Windows 10

Autsch: Microsoft bündelt Windows 10 mit unsicherer Passwort-Manager-App

Tipp von kgborn vor 13 StundenWindows 102 Kommentare

Unter Microsofts Windows 10 haben Endbenutzer keine Kontrolle mehr, was Microsoft an Apps auf dem Betriebssystem installiert (die Windows ...

Sicherheits-Tools

Achtung: Sicherheitslücke im FortiClient VPN-Client

Tipp von kgborn vor 15 StundenSicherheits-Tools

Ich weiß nicht, wie häufig die NextGeneration Endpoint Protection-Lösung von Fortinet in deutschen Unternehmen eingesetzt wird. An dieser Stelle ...

Internet

USA: Die FCC schaff die Netzneutralität ab

Information von Frank vor 1 TagInternet3 Kommentare

Jetzt beschädigt US-Präsident Donald Trump auch noch das Internet. Der neu eingesetzte FCC-Chef Ajit Pai ist bekannter Gegner einer ...

DSL, VDSL

ALL-BM200VDSL2V - Neues VDSL-Modem mit Vectoring von Allnet

Information von Lochkartenstanzer vor 1 TagDSL, VDSL2 Kommentare

Moin, Falls jemand eine Alternative zu dem draytek sucht: Gruß lks

Heiß diskutierte Inhalte
TK-Netze & Geräte
VPN-fähige IP-Telefone
Frage von the-buccaneerTK-Netze & Geräte16 Kommentare

Hi! Weiss noch jemand ein VPN-fähiges IP-Telefon mit dem man z.B. einen Heimarbeitsplatz gesichert anbinden könnte? Habe nur einen ...

Windows Server
GPO nur für bestimmte Computer
Frage von Leo-leWindows Server13 Kommentare

Hallo Forum, gern würde ich ein Robocopy script per Bat an eine GPO hängen. Wichtig wäre aber dort der ...

Windows Server
KMS Facts for Client configuration
Frage von winlinWindows Server13 Kommentare

Hey Leute, wir haben in unserem Netz nun einen neuen KMS Server. Haben Bestands-VMs die noch nicht aktiviert sind. ...

Windows Tools
Software-Tool zum Entfernen von bösartigem Windows
Frage von emeriksWindows Tools11 Kommentare

Hi, siehe Betreff hat das jemals irgendjemand schonmal sinnvoll eingesetzt? (MRT) E.