Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1304to1308
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

Excel-Outlook Referenz mit Office 2010 und 2003

Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 06:39:20
Florian
Guten Morgen zusammen,
habe da ein Problem, bei dem Ihr mir vielleicht weiterhelfen könnt.
Aus Excel heraus wird eine Outlook-Mail generiert. Im normalen Ablauf funktioniert das auch sehr gut - die Referenz in Excel auf die Outlook-Bibliothek ist gelegt.
Problem ist nun, dass die Makro sowohl auf Office (Outlook+Excel) 2003 und 2010 laufen soll. Immer dann, wenn die Makro auf Version Nr 1 gelaufen ist, läuft sie auf der anderen nicht mehr. Grund ist jedesmal, dass die jeweilige Outlook-Bibliothek für Excel unbekannt ist bzw. fehlt (in den Referenzen: ein "MISSING Outlook 14..." muss abgehakt werden). Gibt es da einen Weg, diese Referenzen automatisch zu legen/abzustellen? Wäre für jede Hilfe dankbar.
Vielen Dank, und einen schönen Tag
Florian

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 07:03:51
Oberschlumpf
Moin Florian
Zuerst mal:
Beim ersten Satzgebilde Problem ist nun, dass die Makro sowohl auf... dachte ich noch: "Hmm, ok, hat er ein s vergessen".
Aber dann, beim zweiten Satzgebilde Immer dann, wenn die Makro auf Version... dachte ich: "Ähh, es heißt das Makro und nicht die Makro" - oder anders:
Vorm Absenden alles bitte noch mal Korrekturlesen.
Gerade bei schwierigeren Sachverhalten führen Tipp-, Grammatik-, und sonstige Schreibfehler erst recht nicht zum richtigen Verständnis eines Problems.
So, nun zu deiner Frage.
Ich vermute, dein Problem resultiert aus der Art + Weise, wie du im Code die Verbindung zu den DLL-Dateien herstellst.
Google mal nach den Begriffen excel vba late + early binding.
Und nutze dann das late binding
In diesem Link http://support.microsoft.com/kb/245115/de werden die Unterschiede lang + breit erklärt.
Aber vielleicht findest du in anderen Links bessere Code-Beispiele.
Hilfts?
Ciao
Thorsten

Anzeige
AW: Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 07:13:18
Florian
Servus Thorsten,
vielen Dank erstmal. In unserem Sprachraum heißt es "die Makro".
Der Unterschied zwischen early und late binding ist mir im Prinzip schon klar. Dennoch meine ich, dass füe diesen recht einfachen Sachverhalt (es geht ja nur um das setzen eines Hakens) irgendein Code existieren müsste (irgendwas in der Form "application.reference to outlook 14 = true/false"?). Wir haben Office 2010 neu bekommen, aber noch nicht auf allen Rechnern. Da es um sehr viele Makros geht wäre der Aufwand, alle Makros auf Late Binding umzuschreiben unverhältnismäßig hoch. Zeitgleich ist es relativ anstrengend immer wieder den Hakan manuell zu setzen.
Gibt es evt eine Lösung?
Vielen Dank im Voraus.
Florian

Anzeige
AW: Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 08:53:22
Case
Hallo, :-)
dann musst Du über die GUID gehen:
GUID...
GUID 1...
Und mittelfristig doch mal über Late Binding nachdenken, denn beim nächsten Versionswechsel steht das Problem wieder vor der Tür. :-)
Servus
Case

AW: Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 09:11:59
Martin
Hallo Thorsten,
schreibe doch einfach eine Function, in der per LateBinding die Verbindung zu Outlook hergestellt wird und übergib Outlook als Objekt an deine Makros. Es wird dir aber kaum was anderes übrig bleiben als in allen betreffenden Makros auf die Function zurückzugreifen.
Was die Outlook-Version betrifft: Da Outlook wie auch Excel zum Office-Paket gehört, würde ich die Excelversion abfragen und darüber Rückschluss auf die Outlook-Version ziehen:
Sub test()
If Application.Version 

Viele Grüße
Martin

Anzeige
if Val(Application.Version) <= 11 then oT.
05.04.2013 09:27:22
Tino

AW: Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 11:36:45
Oberschlumpf
Hi Martin
Ja, danke für den Tipp.
Aber ich weiß das schon - ich hatte diesn Thread ja auch nicht eröffnet - Florian war's, er is schuld!! :-)
Ach ja, der Code, den du vorstellst, ist aber keine Funktion, sondern "nur" eine Sub-Prozedur.
Unterschied:
Eine Funktion gibt einen Wert zurück.
Eine Prozedur tut das nicht.
;-)
Ciao
Thorsten

AW: Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 14:41:36
Martin
Hi Thorsten,
sorry, ich habe eure Namen verwechselt. Was die Function betrifft hast du mich falsch verstanden. Ich meinte nur, dass Florian eine Function schreiben und Outlook als Objekt an die jeweiligen Makros übergeben soll. Das würde es ihm auch für die Zukunft erleichtern, wenn ein neues Outlook wieder einmal anders angesprochen werden muss. Dann müsste er nur die Function anpassen, seine Sub-Prozeduren blieben unverändert.
Viele Grüße
Martin

Anzeige
AW: Excel-Outlook Referenz mit Office 2010 und 2003
05.04.2013 07:04:46
Case
Hallo, :-)
Zitat:
Aus Excel heraus wird eine Outlook-Mail generiert. Im normalen Ablauf funktioniert das auch sehr gut - die Referenz in Excel auf die Outlook-Bibliothek ist gelegt.
Und genau da liegt der Hase im Pfeffer begraben - Du arbeitest so mit Early Binding. Wenn Du Versionsübergreifend arbeiten musst, dann gibt es zwei Grundlagen:
1. Mit Objektvariablen arbeiten, sprich - Late Binding.
2. Wenn möglich in der niederen Version programmieren.
Hier mal zwei Links zu diesem Thema:
Online Excel...
Hier geht es um Word - das Prinzip bleibt aber das gleiche.
Outlook in meinem Blog...
Auch hier keine direkte Lösung, aber Du siehst, wie Outlook mit Late Binding angesprochen wird.
Servus
Case

Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige