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

VB Script - Textabschnitte aus Outlook Email kopieren und speichern als doc oder pdf

Mitglied: MightyGrave

MightyGrave (Level 1) - Jetzt verbinden

29.01.2008, aktualisiert 12.03.2008, 5240 Aufrufe, 11 Kommentare

erstellung eines Scripts für outlook

Hallo, ich habe folgende Aufgabenstellung bekommen.

Es soll ein Script angefertigt werden welches ermöglicht, das in einer bekommenen Email, automatisch nach Textabschnitten zu suchen. Diese sollen dann entsprechend kopiert werden und in *.doc oder *.pdf.

Bsp für die Suche:

Von dem Wort Kaufbestätigung bis zum Zeilenende des nächsten Wortes welches gesucht wurde.

von Wort A: Kaufbestätigung bis zum ende der Zeile von Wort B: Herkunft

dawzsichen ist dann wieder ganz viel uninteressanter Text.

danach soll wieder von

Wort C: Käufer bis zum ende der Teile von Wort D: Geldinstitut.


Dies soll dann alles markiert und ein eine DOC oder PDF Datei eingefügt werden, sodass diese dann manuell gespeichert werden muss.


Ich hoffe Ihr könnt mir da ein paar Tipps geben.


Vielen Dank
Mitglied: miniversum
29.01.2008 um 16:00 Uhr
Hier mal der Code zum Auslesen bestimmter Teile im Inhaltstext einer Email.
01.
Sub Textausschnitte() 
02.
WortA = "Wort A" 
03.
WortB = "Wort B" 
04.
WortC = "Wort C" 
05.
WortD = "Wort D" 
06.
 
07.
 
08.
Set myOlApp = CreateObject("Outlook.Application") 
09.
Set myNameSpace = myOlApp.GetNamespace("MAPI") 
10.
Set myfolder = myNameSpace.GetDefaultFolder(olFolderInbox) 
11.
 
12.
Text = myfolder.Items(1).Body 
13.
posA = InStr(1, Text, WortA) 
14.
posB = InStr(posA, Text, WortB) 
15.
ABText = Mid(Text, posA, posB - posA) 
16.
 
17.
posC = InStr(posB, Text, WortC) 
18.
posD = InStr(posC, Text, WortD) 
19.
ABText = Mid(Text, posA, posB - posA) 
20.
CDText = Mid(Text, posC, posD - posC) 
21.
 
22.
MsgBox "ABText: " & ABText 
23.
MsgBox "CDText: " & CDText 
24.
 
25.
End Sub 
26.
 
miniversum
Bitte warten ..
Mitglied: MightyGrave
30.01.2008 um 10:59 Uhr
hi,

das hat mir geholfen, bin jetzt auch scho nso weit, dass ein Word document geöffnet ist.

Kannst du mir kurz erklären, was die Befehle die du dort hingeschrieben hast bewirken?

vielen Dank
Bitte warten ..
Mitglied: MightyGrave
30.01.2008 um 11:38 Uhr
ich muss nur noch wissen, wie ich dieses automatisch in die zwischenablage kriege und von da aus
in Word eingefüge.

posC = InStr(posB, Text, WortC)
posD = InStr(posC, Text, WortD)
ABText = Mid(Text, posA, posB - posA)
CDText = Mid(Text, posC, posD - posC)

MsgBox "" & ABText
MsgBox "" & CDText
Bitte warten ..
Mitglied: miniversum
30.01.2008 um 12:22 Uhr
Hier der Code nochmal mit Komantaren zur Erklärung
01.
Sub Textausschnitte() 
02.
' Suchbegriffe festlegen 
03.
WortA = "Wort A" 
04.
WortB = "Wort B" 
05.
WortC = "Wort C" 
06.
WortD = "Wort D" 
07.
 
08.
' Zugriff auf Posteingang herstellen (myfolder -> Posteingang) 
09.
Set myOlApp = CreateObject("Outlook.Application") 
10.
Set myNameSpace = myOlApp.GetNamespace("MAPI") 
11.
Set myfolder = myNameSpace.GetDefaultFolder(olFolderInbox) 
12.
 
13.
' Hole den Bodytext der ersten/obersten Email im Posteingang und schreibe ihn in die Variable Text 
14.
Text = myfolder.Items(1).Body 
15.
 
16.
posA = InStr(1, Text, WortA)  ' Suche die Position von WortA im Text und schreibe diese in posA 
17.
posB = InStr(posA, Text, WortB)  ' Suche die Position von WortB nach WortA im Text und schreibe diese in posB 
18.
ABText = Mid(Text, posA, posB - posA) ' Hole den Textteil zwischen posA und posB in Text und schreibe ihn in die Variable ABText 
19.
 
20.
posC = InStr(posB, Text, WortC)  ' Suche die Position von WortC nach WortB im Text und schreibe diese in posC 
21.
posD = InStr(posC, Text, WortD) ' Suche die Position von WortD nach WortC im Text und schreibe diese in posD 
22.
CDText = Mid(Text, posC, posD - posC) ' Hole den Textteil zwischen posC und posD in Text und schreibe ihn in die Variable CDText 
23.
 
24.
MsgBox "ABText: " & ABText ' Zeige ABText an 
25.
MsgBox "CDText: " & CDText ' Zeige CDText an 
26.
 
27.
End Sub
miniversum
Bitte warten ..
Mitglied: miniversum
30.01.2008 um 12:32 Uhr
Es geht direkt, also ohne Zwischenablage.
Wie sieht den dein Code aus um Word zu öffnen?
Ich würde es in der Art machen:
01.
Set objWordApp = CreateObject("Word.application") ' Starten von Word 
02.
 
03.
'Starten der Word-Instanz und eine neues Dokument öffnen 
04.
objWordApp.Visible = True ' Word sichtbar machen 
05.
Set objWordDok = objWordApp.documents.Add ' En neues Dokument in Word erstellen 
06.
 
07.
' Text in Word schreiben 
08.
objWordApp.TypeText Text:="Daten aus Outlook" 
09.
objWordApp.TypeParagraph ' Neue Zeile 
10.
objWordApp.TypeText Text:="ABText: " & ABText ' Schreibe ABText in das Word Dokument 
11.
objWordApp.TypeParagraph ' Neue Zeile 
12.
objWordApp.TypeText Text:="CDText: " & CDText ' Schreibe CDText in das Word Dokument 
13.
objWordApp.TypeParagraph ' Neue Zeile
miniversum
Bitte warten ..
Mitglied: MightyGrave
30.01.2008 um 12:34 Uhr
Dim wApp As Object

Set wApp = CreateObject("Word.Application.8")

With wApp
' Word anzeigen
.Application.Visible = True
.Application.Activate

Set wApp = wApp.Documents.Add


End With

Set wApp = Nothing

End Sub




Eigentlich wollte ich mir das kopieren über range holen. Klappt aber nicht. Werde es mal mit deiner Methode probieren


Dim aktRange As Object

Set aktRange = wApp.ActiveDocument.Section(1)

aktRange.Collapse

aktRange.Insert "ABText"
Bitte warten ..
Mitglied: MightyGrave
30.01.2008 um 12:40 Uhr
Private Sub UserForm_Click()

WortA = "Kaufbestätigung"
WortB = "Modellgruppe:"
WortC = "Käufer:"
WortD = "Sie"

Set myOlApp = CreateObject("Outlook.Application")
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myfolder = myNameSpace.GetDefaultFolder(olFolderInbox)

Text = myfolder.Items(1).Body
posA = InStr(1, Text, WortA)
posB = InStr(posA, Text, WortB)
ABText = Mid(Text, posA, posB - posA)

posC = InStr(posB, Text, WortC)
posD = InStr(posC, Text, WortD)
ABText = Mid(Text, posA, posB - posA)
CDText = Mid(Text, posC, posD - posC)

MsgBox "" & ABText
MsgBox "" & CDText

' Word-Objekt Variable definieren

Dim wApp As Object

' Word-Objekt erzeugen
Set wApp = CreateObject("Word.Application.8")

With wApp
' Word anzeigen
.Application.Visible = True
.Application.Activate

Set wApp = wApp.Documents.Add

End With

Set wApp = Nothing

End Sub



Bekomme immer einen Laufzeitfehler 5. O_O

jetzt fehlt mir nur noch die umsetzung mit kopieren udn einfügen. dann bin ich fertig
Bitte warten ..
Mitglied: miniversum
30.01.2008 um 16:33 Uhr
Jetzt nochmal alles in einem. Da ist woll was unübersichtlich geworden. und ein selection hat gefehlt...:
01.
Sub Textausschnitte() 
02.
' Suchbegriffe festlegen 
03.
WortA = "Kaufbestätigung" 
04.
WortB = "Modellgruppe:" 
05.
WortC = "Käufer:" 
06.
WortD = "Sie" 
07.
 
08.
' Zugriff auf Posteingang herstellen (myfolder -> Posteingang) 
09.
Set myOlApp = CreateObject("Outlook.Application") 
10.
Set myNameSpace = myOlApp.GetNamespace("MAPI") 
11.
Set myfolder = myNameSpace.GetDefaultFolder(olFolderInbox) 
12.
 
13.
' Hole den Bodytext der ersten/obersten Email im Posteingang und schreibe ihn in die Variable Text 
14.
Text = myfolder.Items(1).Body 
15.
 
16.
posA = InStr(1, Text, WortA)  ' Suche die Position von WortA im Text und schreibe diese in posA 
17.
posB = InStr(posA, Text, WortB)  ' Suche die Position von WortB nach WortA im Text und schreibe diese in posB 
18.
ABText = Mid(Text, posA, posB - posA) ' Hole den Textteil zwischen posA und posB in Text und schreibe ihn in die Variable ABText 
19.
 
20.
posC = InStr(posB, Text, WortC)  ' Suche die Position von WortC nach WortB im Text und schreibe diese in posC 
21.
posD = InStr(posC, Text, WortD) ' Suche die Position von WortD nach WortC im Text und schreibe diese in posD 
22.
CDText = Mid(Text, posC, posD - posC) ' Hole den Textteil zwischen posC und posD in Text und schreibe ihn in die Variable CDText 
23.
 
24.
Set objWordApp = CreateObject("Word.application") ' Starten von Word 
25.
 
26.
'Starten der Word-Instanz und eine neues Dokument öffnen 
27.
objWordApp.Visible = True ' Word sichtbar machen 
28.
Set objWordDok = objWordApp.documents.Add ' Ein neues Dokument in Word erstellen 
29.
 
30.
' Text in Word schreiben 
31.
objWordApp.Selection.TypeText Text:="Daten aus Outlook" 
32.
objWordApp.Selection.TypeParagraph ' Neue Zeile 
33.
objWordApp.Selection.TypeText Text:="ABText: " & ABText ' Schreibe ABText in das Word Dokument 
34.
objWordApp.Selection.TypeParagraph ' Neue Zeile 
35.
objWordApp.Selection.TypeText Text:="CDText: " & CDText ' Schreibe CDText in das Word Dokument 
36.
objWordApp.Selection.TypeParagraph ' Neue Zeile 
37.
 
38.
' Zuordnungen löschen 
39.
Set myOlApp = Nothing 
40.
Set objWordApp = Nothing 
41.
 
42.
End Sub
So hab ichs grade bei mir getestet udn es funktioniert

miniversum
Bitte warten ..
Mitglied: MightyGrave
31.01.2008 um 08:23 Uhr
Vielen vielen Dank,

also den Rest werde ich dann noch selber ergänzen.

Also automatisches Drucken
Bitte warten ..
Mitglied: MightyGrave
31.01.2008 um 08:26 Uhr
Vielen vielen Dank,

es klappt wunderbar.

Die letzten 2 Sachen werde ich nochmal Versuchen.

1. automatischer ausdruck aus Word
2. einen anderen Ordner verwenden und nicht den Posteingang.


Bin mal gespannt.
Bitte warten ..
Mitglied: mblochi
12.03.2008 um 10:25 Uhr
halli hallo...,

ich hab da mal eine frage ...

Wie kann man dieses Script so umschreiben, dass er beim senden von E-Mails im header nach "Disposition-Notification-To" suchen soll und wenn er es dann gefunden hat soll er den Item.Subject in einer Text datei rein schreiben.

Hat evtl. jemand eine Idee dazu???

Danke schön schon mal im voraus
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

Meldung Speicher voll im VB-Script

gelöst Frage von alexander01VB for Applications16 Kommentare

Hallo, ich habe ein Problem mit einem VB-Script. Es prüft in ca. 300 Excel-Tabellen, ob in der jeweils letzten ...

VB for Applications

Im VB-Script: Worddatei, aktualisieren, speichern und exportieren.

Frage von dila21VB for Applications5 Kommentare

Hallo zusammen, ich habe ein Script, in der ich ein Worddokument öffne (Vorlage) dieses aktualisiere und als PDF speichere. ...

VB for Applications

VB-Script in VB-Script starten und Parameter übergeben

gelöst Frage von denkisVB for Applications7 Kommentare

Hallo liebe Scriptgemeinde, ich muss mehrere Rechner für den Übergang in eine neue Domäne vorbereiten. Dafür sind drei wesentliche ...

Neue Wissensbeiträge
Windows 10

USB Maus und Tastatur versagen Dienst unter Windows 10

Erfahrungsbericht von hardykopff vor 21 StundenWindows 104 Kommentare

Da steht man ziemlich dumm da, wenn der PC sich wegen fehlender USB Tastatur und Maus nicht bedienen lässt. ...

Administrator.de Feedback
Update der Seite: Alles zentriert
Information von Frank vor 1 TagAdministrator.de Feedback18 Kommentare

Hallo User, die größte Änderung von Release 5.8 ist das Zentrieren der Webseite (auf großen Bildschirmen) und ein "Welcome"-Teaser ...

Humor (lol)

WhatsApp-Nachrichten endlich auch per Bluetooth versendbar

Information von BassFishFox vor 1 TagHumor (lol)4 Kommentare

Genau darauf habe ich gewartet! ;-) Der beliebte Messaging-Dienst WhatsApp erhält eine praktische neue Funktion: Ab dem nächsten Update ...

Google Android

Googles "Android Enterprise Recommended" für Unternehmen

Information von kgborn vor 2 TagenGoogle Android3 Kommentare

Hier eine Information, die für Administratoren und Verantwortliche in Unternehmen, die für die Beschaffung und das Rollout von Android-Geräten ...

Heiß diskutierte Inhalte
Windows Netzwerk
WSUS4 und Windows 10 Updates automatisch installieren
Frage von sammy65Windows Netzwerk15 Kommentare

Hallo miteinander, ich habe mit einen neuen WSUS Server aufgesetzt Server 2016 darauf einen aktuellen WSUS. Grund, wir stellen ...

Speicherkarten
Vergessliche USB-Sticks?
Frage von hanheikSpeicherkarten14 Kommentare

Ich habe in den letzten Tagen 500 USB-Sticks mit Bilddateien bespielt. Obwohl ich die Dateien mit größter Sorgfalt kopiert ...

Windows Netzwerk
Backup über WAN
Frage von petereWindows Netzwerk11 Kommentare

Hallo, ich muss aus einem entfernten WAN (synchrone 1Gbit) Daten sichern. Dabei handelt es sich sowohl um wenige große ...

Hyper-V
Hyper-V mit altem XEON-Server. Was ist falsch?
Frage von LollipopHyper-V11 Kommentare

Hallo Bin etwas frustriert. Kleinbetrieb, ca. 15 PC's, 2 Stk. Server mit einigen virtuellen PC's für Fernwartung, VaultServer für ...