Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Verweise auf Outlook Library

Forumthread: Verweise auf Outlook Library

Verweise auf Outlook Library
05.11.2002 11:43:30
Alex
Hallo,

habe folgendes Problem welches bereits im Forum diskutiert und beantwortet wurde (Zitat folgt). Leider funktionert das bei mir nicht, weil eine Fehlermeldung in der (->) markierten Zeile (Problem mit LEFT ?!?). ALle Nutzer mit Outlook 97 können die Datei nicht bearbeiten. Habe das Makro als Auto_Open() deklariert, so dass der Nutzer immer eine funktionierende Datei hat.

Weiss jemand Hilfe???

Gruss,
Alex

"Ich habe eine Excel-Datei mit einem Verweis auf die Outlook-Objekt-Library. Jetzt haben einige Leute, die die Datei bearbeiten müssen nur Outlook 97. Wenn jemand mit Outlook 2000 diese Datei bearbeitet
wird der Verweis auf die Microsoft Outlook 9.0 Objekt Library umgebogen. Bearbeitet nun ein Anwender mit Outlook 97 diese Datei so entsteht ein Kompilierungsfehler, da die 9.0 Library nicht gefunden wird und nicht automatisch die Outlook 8.0 Library ausgewählt wird."


Sub auto_open()
Dim strVerweis As String
On Error Resume Next
With ActiveWorkbook.VBProject.References
.Remove ThisWorkbook.VBProject.References _
("Microsoft Outlook 8.0 Object Library")
strVerweis = _
"c:\programme\microsoft office\office\msoutl8.olb"
.AddFromFile strVerweis
End With
-> ElseIf Left(Application.Version, 1) = 9 Then
With ActiveWorkbook.VBProject.References

.Remove ThisWorkbook.VBProject.References _
("Microsoft Outlook 9.0 Object Library")
strVerweis = _
"c:\programme\microsoft office\office\msoutl9.olb"
.AddFromFile strVerweis
End With
End If
End Sub

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Re: Verweise auf Outlook Library
05.11.2002 11:58:28
GraFri
Hallo

Versuch's mal so.

Re: Verweise auf Outlook Library
05.11.2002 14:23:36
Alexander Ruwwe
Hallo,

irgendwie gibt es ein Problem mit der "Left" Anweisung bei den Office 97 Dosen. Es wird ein Fehler in Bezug auf fehlende Prozedur oder Bibliothek "ausgeworfen". Weiss jemand, was mir fehlt?

Gruss,
Alex

Anzeige
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Verweise auf die Outlook-Objektbibliothek in Excel


Schritt-für-Schritt-Anleitung

Um Verweise auf die Outlook-Objektbibliothek in Excel zu setzen, folge diesen Schritten:

  1. Öffne Excel und gehe zu Entwicklertools. Falls du das Tab nicht siehst, aktiviere es über die Excel-Optionen.

  2. Klicke auf Visual Basic, um den VBA-Editor zu öffnen.

  3. Wähle im Projekt-Explorer das entsprechende Arbeitsblatt oder die Arbeitsmappe aus.

  4. Gehe auf Extras > Verweise....

  5. Suche nach "Microsoft Outlook xx.0 Object Library" (xx steht für die Versionsnummer, z.B. 8.0 für Outlook 97).

  6. Aktiviere den Haken und klicke auf OK.

  7. Füge das folgende Beispiel-Makro ein, um die Bibliothek zu verwenden:

    Sub auto_open()
       Dim strVerweis As String
       On Error Resume Next
       With ActiveWorkbook.VBProject.References
           .Remove ThisWorkbook.VBProject.References("Microsoft Outlook 8.0 Object Library")
           strVerweis = "c:\programme\microsoft office\office\msoutl8.olb"
           .AddFromFile strVerweis
       End With
       If Left(Application.Version, 1) = 9 Then
           With ActiveWorkbook.VBProject.References
               .Remove ThisWorkbook.VBProject.References("Microsoft Outlook 9.0 Object Library")
               strVerweis = "c:\programme\microsoft office\office\msoutl9.olb"
               .AddFromFile strVerweis
           End With
       End If
    End Sub
  8. Speichere das Makro und schließe den VBA-Editor.


Häufige Fehler und Lösungen

  • Kompilierungsfehler durch fehlende Bibliothek: Dieser Fehler tritt auf, wenn ein Nutzer mit Outlook 97 versucht, eine Datei zu öffnen, die mit einer neueren Version bearbeitet wurde. Stelle sicher, dass der Verweis auf die passende Outlook Object Library gesetzt ist.
  • Fehler bei der Left-Anweisung: Wenn bei der Verwendung von Left(Application.Version, 1) ein Fehler auftritt, kann dies an der Version von Excel liegen. Überprüfe, ob das Makro mit der richtigen Excel- und Outlook-Version getestet wurde.

Alternative Methoden

Falls die oben beschriebenen Methoden nicht funktionieren, gibt es alternative Ansätze:

  1. Verwende Late Binding: Anstatt die Bibliothek direkt zu verlinken, kannst du Late Binding verwenden, um die Kompatibilität zwischen verschiedenen Outlook-Versionen zu gewährleisten. Beispiel:

    Dim olApp As Object
    Set olApp = CreateObject("Outlook.Application")
  2. Update der Outlook-Version: Überlege, ob ein Upgrade auf eine neuere Version von Outlook sinnvoll ist, um Komplikationen zu vermeiden.


Praktische Beispiele

Hier sind einige praktische Anwendungsbeispiele für die Verwendung der Outlook-Objektbibliothek:

  1. E-Mail senden:

    Sub SendEmail()
       Dim olApp As Object
       Dim olMail As Object
       Set olApp = CreateObject("Outlook.Application")
       Set olMail = olApp.CreateItem(0) ' 0 steht für MailItem
       With olMail
           .To = "empfaenger@example.com"
           .Subject = "Betreff"
           .Body = "Nachrichtentext"
           .Send
       End With
    End Sub
  2. Kalendereintrag erstellen:

    Sub CreateAppointment()
       Dim olApp As Object
       Dim olAppointment As Object
       Set olApp = CreateObject("Outlook.Application")
       Set olAppointment = olApp.CreateItem(1) ' 1 steht für AppointmentItem
       With olAppointment
           .Start = Now + 1 ' Morgen
           .Duration = 60 ' Dauer in Minuten
           .Subject = "Termin"
           .Body = "Details zum Termin"
           .Save
       End With
    End Sub

Tipps für Profis

  • Nutze On Error Resume Next: Damit kannst du Fehler abfangen, ohne dass das Makro sofort abbricht. Sei jedoch vorsichtig, dass du Fehler richtig behandelst.
  • Versionen prüfen: Stelle sicher, dass dein Code auch bei unterschiedlichen Office-Versionen funktioniert, indem du die Anwendungsversion abfragst.
  • Dokumentiere deinen Code: Füge Kommentare hinzu, um den Code für andere verständlich zu machen.

FAQ: Häufige Fragen

1. Warum bekomme ich einen Kompilierungsfehler?
Ein Kompilierungsfehler kann auftreten, wenn die benötigte Outlook-Objektbibliothek nicht verfügbar ist. Überprüfe, ob der Verweis auf die Outlook Object Library korrekt gesetzt ist.

2. Wie kann ich die Outlook-Version abfragen?
Du kannst die Outlook-Version mit folgendem VBA-Code abfragen:

MsgBox Application.Version

3. Was ist der Unterschied zwischen Early Binding und Late Binding?
Early Binding erfordert einen direkten Verweis auf die Bibliothek, während Late Binding die Bibliothek zur Laufzeit erstellt, was die Kompatibilität erhöht.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige