Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1136to1140
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

sehr spezielle vba frage

sehr spezielle vba frage
bernd
hallo zusammen,
ich verzweifel ein wenig weil meine vba kenntnisse überschritten werden. es ist wahrscheinlich nicht einmal das richtige forum aber ich versuche es trotzdem denn die hoffnung stirbt ja bekanntlich zuletzt :)
anbei ein code, mit dem outlook 2003 jede emailanhang von einer bestimmten email automatisch speichert. mein problem ist nun, wie muss ich den code abändern, damit der text der empfangenen email in z.b. test.txt gespeichert wird. die emails werden zudem keinen anhang haben!
bin total überfordert...
vorab schon vielen dank für eure mühen
vg
bernd
Private Sub Application_NewMail()
Dim Ordnername As String
Dim objPosteingang As MAPIFolder
Dim objNewMail As MailItem
On Error Resume Next
Set objPosteingang = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
For Each objNewMail In objPosteingang.Items
With objNewMail
If .UnRead = True And .SenderEmailAddress = "mail@rathonline.de" Then
Text = .Attachments.Count
If Anzahl > 0 Then
Ordnername = "D:\Daten\email\"
For i = 1 To Anzahl
.Attachments.Item(i).SaveAsFile Ordnername & "\" & .Attachments.Item(i). _
FileName
Next i
End If
End If
End With
Next objNewMail
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: sehr spezielle vba frage
17.02.2010 18:52:07
Ramses
Hallo
"..damit der text der empfangenen email in z.b. test.txt gespeichert wird..."
Kannst du mir den tieferen Sinn dieser Massnahme erklären ?
Wenn es HTML Mails sind, werden keine Bilder oder sonstigen grafischen Elemente gespeichert !?
"...in z.b. test.txt gespeichert wird..."
"z.B." geht nicht. Es muss schon irgendeine Logik sein wie die Dateien benannt werden sollen
Wenn deine Mails keine Attachments haben, wozu dann dieser Code ?
Gruss Rainer
AW: sehr spezielle vba frage
17.02.2010 19:24:02
bernd
hallo rainer,
es wird eine fernsteuerung. ich schicke mit meinem iphone eine email an eine eingens dafür eingerichtete email adresse. dort steht dann z.b. ein befehl drin wie screenshot. mehr nicht.
über excel prüfe ich dann alle paar sekunden ob es eine neue datei in dem ordner gibt. wenn ja wird es ausgelesen und der befehl screenshot abgearbeitet. am ende wird mir dann über exel der screenshot auf mein iphone geschickt. ein rdp tool möchte ich nicht verwenden und aufgrund meiner sehr hohen gesamtauflösung ( 5120 *1600) ist dies eh nicht möglich, weil ich am iphone nicht erkennen würde was da steht :) ist sicherlich nicht die modernste lösung aber es würde klappen. die excelprogrammierung dafür ist nicht das problem...
einen schönen feierabend und viele grüße
bernd
Anzeige
AW: sehr spezielle vba frage
17.02.2010 20:56:10
Ramses
Hallo
Aber da ist der Aufbau doch komplett umständlich, wenn du mit EXCEL dann weiterarbeitest.
Da würde es sich doch eher anbieten, von EXCEL den Posteingang überwachen zu lassen und nach den Betreffs suchen zu lassen und wenn der spezielle Betreff eintrifft, dann entsprechend zu reagieren.
Schreib dein Schlüsselwort in den Betreff und gut ist.
Option Explicit

Sub Check_Mail_Folder()
    '(C) Ramses
    Dim objOutlook As Object
    Dim objnSpace As Object
    Dim objFolder As Object
    Dim objMsg As Object
    Dim intCounter As Integer, intCount As Integer, iRow As Integer
    Dim sTxt As String
    Application.ScreenUpdating = False
    Set objOutlook = CreateObject("Outlook.Application")
    Set objnSpace = objOutlook.GetNamespace("MAPI")
    'Folders(2) ist ein Unterordner in Posteingang
    Set objFolder = objnSpace.Folders(1).Folders(2)
    'Zum kontrollieren
    'Debug.Print objFolder.Name
    intCount = objFolder.items.Count
    If intCount > 0 Then
        For intCounter = 1 To intCount
            Select Case .items(intCounter).Subject
                Case "Screenshot"
                    'Dein Code
                Case "Coffee"
                    'Dein
                Case "Beer"
    
            End Select
        Next
    End If
    Set objnSpace = Nothing
    Set objFolder = Nothing
    Set objMsg = Nothing
    Set objOutlook = Nothing
    ReStart
End Sub

Sub ReStart()
    'Prozedur Check_Mail_Folder neu starten in 2 Minuten
    Application.OnTime Now + TimeSerial(0, 2, 0), "check_mail_folder"
End Sub

Gruss Rainer
Anzeige
AW: sehr spezielle vba frage
18.02.2010 07:14:43
bernd
guten morgen Rainer,
dass ist natürlich noch viel besser. werde es sofort ausprobieren.
ich wusste garnicht, dass man von excel aus auf outlook zugreifen kann!
Vielen Dank und einen schönen Tag!
Bernd

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige