Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
740to744
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
740to744
740to744
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

excel über outlook mails steuern

excel über outlook mails steuern
04.03.2006 14:25:52
taeglich@gmx.net
Hi ich versuch gerade meine excel applikation (die immer offen ist) über eingehende Mails (und absender und text) zu steueren - irgendwie gelingt mir aber die aktivierung der offenen excelarbeitsmappe nicht bzw. das ausführen von makros oder noch besser direktes zellwert ändern aus dem outlook vba nich:-(
Vielen Dank im Voraus
thomas
Public

Sub Application_NewMail()
' Variablen deklarieren
Dim Laenge As Double
Dim Text1 As String
Dim objApp As Outlook.Application
Dim objNameSpace As Outlook.NameSpace
Dim objMAPIFolder As Outlook.MAPIFolder
Dim objMailItem As Outlook.MailItem
Dim lngOldMailCounter As Long
Dim lngNewMailCounter As Long
Dim strBetreff As String
Dim strText As String
Dim strWebAdresse As String
Dim strWorkbook As String
Dim appExcel As Object
Dim sWorkbook As Object
Dim sPfad As String
Dim sFile As String
Dim sMacro As String
sPfad = "C:\aktuel"
sFile = "Trend1-24.xls"
strWorkbook = sPfad & "\" & sFile ' initialisiern
Set appExcel = CreateObject("Excel.Application")
'Set sWorkbook = appExcel.Workbooks(sFile)
Set objApp = New Outlook.Application
Set objNameSpace = objApp.GetNamespace(Type:="MAPI")
Set objMAPIFolder = objNameSpace.GetDefaultFolder(FolderType:=olFolderInbox)
'ExcelObject erstellen
' Posteingang lesen
For Each objMailItem In objMAPIFolder.Items
With objMailItem
If .UnRead = True Then
strBetreff = .Subject
strText = .Body
Laenge = Len(strText)
strText = Left(strText, Laenge - 4)
If strBetreff = "trade as hell" Then
If strText = "nichtmehrtraden" Then
appExcel.Workbooks.Open strWorkbook
With Sheets("accountinfo")
user = .Cells(3, 2).Value
login = .Cells(4, 2).Value
.Cells(3, 2).Value = 0
.Cells(4, 2).Value = 0
End With
Else
If strText = "wiedertraden" Then
appExcel.Workbooks.Open strWorkbook
With Sheets("accountinfo")
.Cells(3, 2).Value = user
.Cells(4, 2).Value = login
End With
Else
End If
End If
Else
End If
End If
End With
Next objMailItem
End Sub

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: excel über outlook mails steuern
04.03.2006 15:47:57
Thomas
Hallo Thomas,
hier ein Ansatz ...

Option Explicit
Private Sub Application_NewMail()
    'Dim Laenge As Double
    'Dim Text1 As String
    Dim objApp As Outlook.Application
    Dim objNameSpace As Outlook.NameSpace
    Dim objMAPIFolder As Outlook.MAPIFolder
    Dim objMailItem As Outlook.MailItem
    'Dim lngOldMailCounter As Long
    'Dim lngNewMailCounter As Long
    Dim strBetreff As String
    Dim strText As String
    'Dim strWebAdresse As String
    'Dim strWorkbook As String
    Dim appExcel As Object
    Dim sWorkbook As Object
    'Dim sPfad As String
    Dim sFile As String
    'Dim sMacro As String
    'sPfad = "C:\aktuel"
    sFile = "Trend1-24.xls"
    Set appExcel = GetObject(, "Excel.Application")
    Set sWorkbook = appExcel.Workbooks(sFile)
    Set objApp = Me.Application
    Set objNameSpace = objApp.GetNamespace(Type:="MAPI")
    Set objMAPIFolder = objNameSpace.GetDefaultFolder(FolderType:=olFolderInbox)
    Static login As String
    Static user As String
'   Posteingang lesen
    For Each objMailItem In objMAPIFolder.Items
        With objMailItem
            If .UnRead Then
                strBetreff = .Subject
                strText = Trim(.Body)
                If strBetreff = "Trade as hell" Then
                    If Left(strText, Len("nichtmehrtraden")) = "nichtmehrtraden" Then
                        'appExcel.Workbooks.Open strWorkbook
                        With sWorkbook.Sheets("accountinfo")
                            user = .Cells(3, 2).Value
                            login = .Cells(4, 2).Value
                            .Cells(3, 2).Value = 0
                            .Cells(4, 2).Value = 0
                        End With
                    ElseIf Left(strText, Len("wiedertraden")) = "wiedertraden" Then
                        'appExcel.Workbooks.Open strWorkbook
                        With sWorkbook.Sheets("accountinfo")
                            .Cells(3, 2).Value = user
                            .Cells(4, 2).Value = login
                        End With
                    End If
                End If
                .UnRead = False
            End If
        End With
    Next objMailItem
End Sub


Gruss
Thomas
Risi Thomas Softwareentwicklung
Addins - Datenbanklösungen - Komponenten - RTDServer
Anzeige
AW: excel über outlook mails steuern
04.03.2006 15:57:13
taeglich@gmx.net
OHHHHHH - VIELEN Dank!

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige