mupan7
Goto Top

Makro ausführen: Liste ist leer

Bin sicher kein VBA-Neuling, aber mit Outlook, seinem riesigen Objektmodell und seinem <gnx$$§%&> Sicherheitssystem habe ich noch kaum Erfahrung.

Hab ein simples Skript im Netz gefunden, der Plan ist, es weiter anzupassen, auszuprobieren und dann an eine Regel zu hängen. Es soll dann ca. 80 Mitarbeitern die tägliche Arbeit erleichtern.

Public Sub SaveAllAttachmentsOfThisMailToDisk(olMail As MailItem)

    'http://www.webdata.de/index.php/blogs/trainernews-kai-weible/226-outlook-tipp-3-dateianhaenge-automatisch-speichern.html  
    Dim strPfad As String
    Dim Datei As Attachments
    Pfad = "C:\...\...\"   'Der Pfad muss entsprechend angepasst werden. Wichtig ist der letzte Backslash  

    On Error Resume Next

    Set Datei = olMail.Attachments
    For i = 1 To Datei.Count
        Datei.Item(i).SaveAsFile strPfad & Datei.Item(i).FileName
    Next i

End Sub

Ich hab es im VbaProjekt.OTM in ThisOutlookSession gespeichert. Es ist Public deklariert. DEP ist aus, Makrosicherheit ganz unten. Trotzdem ist die Liste mit Alt+F8 leer. Was kann ich noch checken? gpedit.msc, gpresult.exe, secpol.msc, wenn ja, wo da genauer? Vermutlich muss ich mich auch mit den Windows-Internetoptionen auseinandersetzen? Ich darf den Avira-Schild nicht testweise deaktivieren, also wenn es der sein sollte, muss ich genau wissen, welche Ausnahme ich beantrage und in 5 Wochen vielleicht mal abgelehnt oder eingetragen kriege. Ich nehme an, der Exchange ist auch sensibel für VBA-Sicherheitskonfiguration. Es macht aber keinen Unterschied, ob die ausgewählte Mail in der Inbox und damit auf dem Exchange liegt oder ob ich sie in einen lokalen Ordner verschoben habe, bevor ich den Makro neu zu starten versuche.

Ich würde mich über Hinweise, wo ich die Antwort ggf. selbst finden kann, sehr freuen.

Danke schonmal fürs Lesen.

mupan

Content-ID: 256179

Url: https://administrator.de/forum/makro-ausfuehren-liste-ist-leer-256179.html

Ausgedruckt am: 23.12.2024 um 05:12 Uhr

mupan7
mupan7 28.11.2014 um 11:30:24 Uhr
Goto Top
OK, die Teil-Frage "Welche GPOs checken?" kann ich mir vermutlich aus Makro in Office2013 verbieten selbst beantworten.
114757
Lösung 114757 28.11.2014 aktualisiert um 12:40:44 Uhr
Goto Top
Public Sub SaveAllAttachmentsOfThisMailToDisk(olMail As MailItem) 
wenn du kein VBA Neuling bist sollte dir der Parameter der Prozedur auffallen !! Du übergibst dieser ja überhaupt kein Mailitem ...

Nehme das NewMailEx Event das bei jeder eintreffenden Mail ausgeführt wird.
Outlook newMailex oder NewMail?

Gruß jodel32
mupan7
mupan7 28.11.2014 um 12:44:27 Uhr
Goto Top
Zitat von @114757:

> Public Sub SaveAllAttachmentsOfThisMailToDisk(olMail As MailItem) 
wenn du kein VBA Neuling bist sollte dir der Parameter der Prozedur auffallen !! Du übergibst dieser ja überhaupt kein
Mailitem ...

Nun, ich habe fantasiert, dass olMail automatisch übergeben wird, so wie das control-Handle bei Makro-Rufen aus den Ribbons heraus. Ist also nicht so. Hat aber auch keine Auswirkung auf die Alt+F8-Liste, ob ich einen existierenden oder nicht-existierenden Parameter übergebe ... Wichtig ist, dass zwischen den ( ) gar nichts steht, dann gehts auch. Löst natürlich meine Aufgabe nicht, aber ich habs halt jetzt gelernt.

Nehme das NewMailEx Event das bei jeder eintreffenden Mail ausgeführt wird.
Outlook newMailex oder NewMail?

Danke, hast mich in die richtige Richtung geschubst.

Grüße

mupan