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

Outlook Attachments....nicht alle werden gespeichert

Mitglied: Dpole86

Dpole86 (Level 1) - Jetzt verbinden

08.08.2014 um 11:26 Uhr, 808 Aufrufe, 5 Kommentare

Hallo zusammen

ich versuche mich gerade in VBA.

Allerdings habe ich das Problem das nicht alle Attachments gespeichert werden.
Duplicate werden einfach ausgelassen

Mein Code

01.
 
02.
Public Sub saveAttachtoDisk(itm As Outlook.MailItem) 
03.
Dim objAtt As Outlook.Attachment 
04.
Dim saveFolder As String 
05.
Dim dateFormat 
06.
dateFormat = Format(Now, "yyyy-mm-dd H-mm") 
07.
If Dir("C:\Temp", vbDirectory) = "" Then 
08.
  MkDir ("C:\Temp") 
09.
Else 
10.
saveFolder = "c:\temp\" 
11.
     For Each objAtt In itm.Attachments 
12.
          objAtt.SaveAsFile saveFolder & "\" & dateFormat & "-" & objAtt.DisplayName 
13.
          Set objAtt = Nothing 
14.
     Next 
15.
End If 
16.
End Sub 
17.
 
Was mache ich falsch? bzw was fehlt mir den damit der Code Funktioniert?
Mitglied: colinardo
08.08.2014, aktualisiert um 11:50 Uhr
Zitat von Dpole86:
Duplicate werden einfach ausgelassen
Was mache ich falsch? bzw was fehlt mir den damit der Code Funktioniert?
irgendwie logisch das wenn eine Datei schon im Dateisystem existiert, diese nicht erneut von der SaveAsFile-Funktion unter dem gleichen Namen abgespeichert werden kann. Das musst du voher überprüfen und gegebenenfalls einen neuen Namen dafür generieren bzw. einfach eine Nummer anhängen. z.B. so:

01.
.. 
02.
... 
03.
.... 
04.
dim fso 
05.
set fso = CreateObject("Scripting.FilesystemObject") 
06.
For Each objAtt In itm.Attachments 
07.
   filename =  saveFolder & "\" & dateFormat & "-" & objAtt.Filename 
08.
   number = 1 
09.
   while fso.FileExists(filename) 
10.
      filename =  saveFolder & "\" & dateFormat & "-" & fso.GetBasename(objAtt.Filename) & "(" & number & ")." & fso.GetExtensionName(objAtt.Filename) 
11.
      number = number + 1 
12.
   Wend 
13.
   objAtt.SaveAsFile filename 
14.
   Set objAtt = Nothing 
15.
Next
Grüße Uwe

11:50 : -edit- Fehler in Zeile 10 korrigiert
Bitte warten ..
Mitglied: Dpole86
08.08.2014 um 11:50 Uhr
Hi Uwe

Vielen Dank für deine Antwort

mein Code bringt jetzt einen Fehler

und sieht folgendermassen aus

01.
  
02.
Public Sub saveAttachtoDisk(itm As Outlook.MailItem) 
03.
Dim objAtt As Outlook.Attachment 
04.
Dim saveFolder As String 
05.
Dim dateFormat 
06.
Dim fso 
07.
 
08.
dateFormat = Format(Now, "yyyy-mm-dd H-mm") 
09.
If Dir("C:\Temp", vbDirectory) = "" Then 
10.
  MkDir ("C:\Temp") 
11.
Else 
12.
 
13.
saveFolder = "c:\temp\" 
14.
Set fso = CreateObject("Scripting.FilesystemObject") 
15.
     For Each objAtt In itm.Attachments 
16.
   FileName = saveFolder & "\" & dateFormat & "-" & objAtt.FileName 
17.
   Number = 1 
18.
   While fso.FileExists(FileName) 
19.
      FileName = saveFolder & "\" & dateFormat & "-" & fso.GetBasename(objAtt.FileName) & "(" & Number & ")." & fso.GetExtensionName 
20.
      Number = Number + 1 
21.
   Wend 
22.
   objAtt.SaveAsFile FileName 
23.
   Set objAtt = Nothing 
24.
   Next 
25.
End If 
26.
End Sub
ich denke ich habe was falsch gemacht
Bitte warten ..
Mitglied: colinardo
08.08.2014, aktualisiert um 11:53 Uhr
hatte einen kleinen Fehler in Zeile 10 meines Codes korrigiert, s.o.
Bitte warten ..
Mitglied: Dpole86
08.08.2014 um 12:03 Uhr
Hey Ja das war es

noch eine Frage an dich Uwe.

wenn ich jetzt das Datum nicht vor, sondern hinter der Datei haben möchte,

Ok ich habs glaub verbockt ^^

01.
Public Sub saveAttachtoDisk(itm As Outlook.MailItem) 
02.
Dim objAtt As Outlook.Attachment 
03.
Dim saveFolder As String 
04.
Dim dateFormat 
05.
Dim fso 
06.
 
07.
dateFormat = Format(Now, "yyyy-mm-dd H-mm") 
08.
If Dir("C:\Temp", vbDirectory) = "" Then 
09.
  MkDir ("C:\Temp") 
10.
Else 
11.
 
12.
saveFolder = "c:\temp\" 
13.
Set fso = CreateObject("Scripting.FilesystemObject") 
14.
     For Each objAtt In itm.Attachments 
15.
   FileName = saveFolder & "\" & dateFormat & "-" & objAtt.FileName 
16.
   Number = 1 
17.
   While fso.FileExists(FileName) 
18.
      FileName = saveFolder & "\" & fso.GetBasename(objAtt.FileName) & dateFormat & "." & fso.GetExtensionName(objAtt.FileName) 
19.
      Number = Number + 1 
20.
   Wend 
21.
   objAtt.SaveAsFile FileName 
22.
   Set objAtt = Nothing 
23.
   Next 
24.
End If 
25.
End Sub


Ich wollte das es so aussieht

briefkopf-212014-08-08 11-59.tif

Grüße Roman
Bitte warten ..
Mitglied: colinardo
08.08.2014, aktualisiert um 12:09 Uhr
einmal hier (in deinem Code Zeile 15)
filename =  saveFolder & "\" & fso.GetBasename(objAtt.Filename) & "-" & dateFormat & "." & fso.GetExtensionName(objAtt.Filename) 
und dann noch hier in der while-Schleife
filename =  saveFolder & "\" & fso.GetBasename(objAtt.Filename) & "-" & dateFormat & "(" & number & ")." & fso.GetExtensionName(objAtt.Filename) 
btw. mach in Zeile 12 noch bei
savefolder = "c:\Temp\"
den abschließenden Backslash weg ....
Bitte warten ..
Ähnliche Inhalte
Microsoft Office

Terminalserver Outlook Installation: öffnet keine attachments

Frage von seventowerMicrosoft Office7 Kommentare

Moin, ein HYPER-V Host Windows 2012 Datacenter drei VM : DC, ES, Terminalserver(RDS) auf dem RDS Office 2013 Professional ...

Outlook & Mail

Outlook 2013 Attachment in Kalendereintrag nicht sichtbar

Frage von xbast1xOutlook & Mail5 Kommentare

Hallo zusammen, kurioses Verhalten. Ein Mitarbeiter erstellt einen Termin und zieht eine E-Mail in den Termin. Gewöhnlich ist das ...

Outlook & Mail

Sicheres Öffnen von Office-Attachments in Outlook

gelöst Frage von donnyS73lbOutlook & Mail3 Kommentare

Hallo zusammen, ich möchte fragen, ob es in älteren Versionen von Outlook (bspw. 2007) die Möglichkeit gibt, einzustellen, dass ...

Exchange Server

Gespeicherte Empänger in Outlook

gelöst Frage von uLmiExchange Server5 Kommentare

Hallo Zusammen, ich sehe immer wieder ein Problem in einer Exchange / Outlook-Umgebung und wollte euch mal Fragen wie ...

Neue Wissensbeiträge
Sicherheit

Zero Day-Schwachstelle im Internet Explorer - wird von APT bereits ausgenutzt

Information von kgborn vor 3 StundenSicherheit

Im Kernel des Internet Explorer scheint es eine Zero Day-Lücke zu geben, die von staatlichen Akteuren (APT) im Rahmen ...

Microsoft
Folder Security Viewer-Lizenzen zu gewinnen
Information von kgborn vor 3 StundenMicrosoft

Ich nehme das Thema mal in Absprache mit Frank hier auf, da es für den einen oder anderen Administrator ...

Hardware

Feueralarm killt Festplatten in Rechenzentrum - führt zu größerem Ausfall

Information von kgborn vor 3 StundenHardware6 Kommentare

Noch ein kleiner Beitrag für Administratoren, die in Rechenzentren aktiv sind - so als Fingerzeig. Denn es gibt Szenarien, ...

MikroTik RouterOS

Mikrotik Advisory: Vulnerability exploiting the Winbox port

Information von colinardo vor 3 StundenMikroTik RouterOS

Brand aktuell: Eine Schwachstelle im Winbox-Port bei Mikrotik Routern erlaubt das Auslesen der User-Datenbank der Router. Patch ist aktuell ...

Heiß diskutierte Inhalte
Linux
Linux Server oder Windows Server - lohnt eine Umstellung auf Linux und ebenso basierende SW bei einer langfristigen Planung?
Frage von motus5Linux22 Kommentare

Wir brauchen bei uns einen neuen Server. Dieser wird als Fileserver, Domäne Controller sowie Exchange Server verwendet. Wir versuchen ...

Netzwerkgrundlagen
VLAN - Offene Fragen
Frage von KnettenbrechNetzwerkgrundlagen17 Kommentare

Hallo zusammen, ich befasse mich derzeit mit dem Thema VLAN. Hierzu habe ich schon einige Guides gelesen, einschließlich des ...

DSL, VDSL
ISP Wechsel auf Vodefone Koax, Gebäudeverkabelung nur per Cat 7
gelöst Frage von wusa88DSL, VDSL13 Kommentare

Hallo Zusammen, ich bin momentan bei Mnet als Glasfaser Kunde und möchte Preis/Leistungs-Technisch zu Kabel Deutschland / Vodafone wechseln. ...

Windows Server
Domänencontroller trennen
Frage von Akit57Windows Server13 Kommentare

Hallo, ich hoffe das mir hier jemand meine Frage trotz der spärlichen Informationen die ich geben kann beantworten kann: ...