it-swarm.com.de

Fehler beim Abrufen des benutzerdefinierten Typs nicht beim Ausführen von Code

Weiß jemand, warum ich mit diesem Code in der Function GetOutlookApp() As Outlook.Application am unteren Rand einen Fehler "benutzerdefinierten Typ nicht definiert" erhalte? 

Sub CreateAppointments()

Dim cell As Excel.Range
Dim rng As Excel.Range
Dim wholeColumn As Excel.Range
Dim startingCell As Excel.Range
Dim oApp As Outlook.Application
Dim tsk As Outlook.TaskItem
Dim wkbk As Excel.Workbook
Dim wksht As Excel.Worksheet
Dim lastRow As Long
Dim arrData As Variant
Dim i As Long

'Outlook-App starten

Set oApp = GetOutlookApp
If oApp Is Nothing Then
  MsgBox "Could not start Outlook.", vbInformation
  Exit Sub
End If

Holen Sie sich den Arbeitsblattbereich in einem Arbeitsgang in ein Array

Set wkbk = ActiveWorkbook
Set wksht = wkbk.ActiveSheet
Set wholeColumn = wksht.Range("B:B")
lastRow = wholeColumn.End(xlDown).Row - 2
Set startingCell = wksht.Range("B2")
Set rng = wksht.Range(startingCell, startingCell.Offset(lastRow, 1))
arrData = Application.Transpose(rng.Value)

'Schleife durch das Array und erstellen Sie Aufgaben für jeden Datensatz

For i = LBound(arrData, 2) To UBound(arrData, 2)
  Set tsk = oApp.CreateItem(olTaskItem)
  With tsk
    .DueDate = arrData(2, i)
    .Subject = arrData(1, i)
    .Save
  End With
Next I

End Sub

Function GetOutlookApp() As Outlook.Application
On Error Resume Next
Set GetOutlookApp = CreateObject("Outlook.Application")

End Function
6
Kim G

Der Wie man Outlook von einem anderen Programm aus automatisiert Artikel beschreibt alle für die Automatisierung von Outlook erforderlichen Schritte. Es sagt aus:

Um die frühe Bindung verwenden zu können, müssen Sie zunächst die verfügbare Outlook-Objektbibliothek referenzieren. Gehen Sie hierzu in Visual Basic (VB) oder Visual Basic für Applikationen folgendermaßen vor:

  1. Klicken Sie im Visual Basic-Editor im Menü Extras auf Verweise.
  2. Aktivieren Sie das Microsoft Outlook 15.0 Object Library Kontrolle-Kästchen, und klicken Sie dann auf OK.
11
Eugene Astafiev

Ich hatte das gleiche Problem, wenn ich Outlook in meinen Skripts VBA Excel verwende und Folgendes auswähle:

Extras> Referenzen> Aktivieren Sie das Kontrollkästchen vor "Microsoft Outlook 15.0 Object Library".

1
D. Chirita