Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1020to1024
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
Verweis auf MS Forms 2.0 setzen per Vba
06.11.2008 16:57:01
Reinhard
Hallo Wissende,
ich will eine xla erstellen, die den Verweis auf Microsoft Forms 2.0 Object Libraray benötigt. Der Verweis zielt in XL97 auf eine andere Datei als in XL2000, deshalb sind auch die Guid-Nummern verschieden.

Option Explicit
#If VBA6 = 0 Then
Const FM20_GUID = "{C43ABEE0-5C8F-4D95-B2C1-05B898491C64}" 'XL97
#Else
Const FM20_GUID = "{0D452EE1-E08F-101A-852E-02608C4D0BB4}" 'XL2000
#End If


Ich hatte schonmal XL2003 da klappte das auch. Was ich nun nicht weiß, mangels XL2007, klappt das auch in XL2007?
Der eigentliche Verweis wird dann so (Nepumuk war damals so nett mir den Code zu basteln) gesetzt:


Sub VerweisSetzen2()
Dim intIndex As Integer, blnFound As Boolean
On Error GoTo err_exit
With ThisWorkbook.VBProject.References
For intIndex = 1 To .Count
If .Item(intIndex).GUID = FM20_GUID Then
If .Item(intIndex).IsBroken Then
.Remove .Item(intIndex)
Else
blnFound = True
End If
End If
Next
If Not blnFound Then .AddFromGuid GUID:=FM20_GUID, Major:=2, Minor:=0
End With
Exit Sub
err_exit:
MsgBox "Fehler " & CStr(Err.Number) & vbLf & _
vbLf & Err.Description, vbCritical, "Fehler"
End Sub


Gruß
Reinhard

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verweis auf MS Forms 2.0 setzen per Vba
06.11.2008 17:35:00
ransi
Hallo Rheinhard
Füge mal eine Userform in eine Datei ein und lass dies mal laufen.
Die Verweise werden im Direktfenster gelistet.
Option Explicit


Public Sub t()
Dim i
Dim c
Set c = ThisWorkbook.VBProject.References
For i = 1 To c.Count
    Debug.Print c(i).Name & "--->" & c(i).GUID
Next
End Sub

ransi
Anzeige
@Ransi : Du bist ja lustig ;-)
06.11.2008 17:57:09
NoNet
Hallo Ransi,
wie soll Reinhard das denn prüfen, er schrieb ja bereits :

Was ich nun nicht weiß, mangels XL2007...


Das interpretiere ich als : Kein Excel 2007 vorhanden - daher kann er die GUID unter Excel 2007 wohl auch kaum ermitteln ;-)
Ansonsten aber natürlich eine brauchbare Lösung...
Gruß, NoNet

AW: @Ransi : Du bist ja lustig ;-)
06.11.2008 18:01:04
ransi
HAllo NoNet
ooops...
Hast recht.
Wer lesen kann ist ganz klar im Vorteil...
ransi
GUID für "MS Forms 2.0" ist in XL2007 identisch
06.11.2008 17:52:00
NoNet
Hallo Reinhard,
grundsätzlich sollte das funktionieren, da die GUID für die "Microsoft Forms 2.0" unter Excel 2007 identisch mit der aus Excel 2003 ist : {0D452EE1-E08F-101A-852E-02608C4D0BB4}
Auch die Systemvariable VBA6 besitzt unter Excel 2007 den Wert 1, so dass die PreCompiler-Anweisungen (#If ... #End If) funktionieren.
Zu beachten gilt allerdings (ebenso wie in Excel 2003), dass der Zugriff auf das VB-Projekt standardmässig gesperrt ist und zuvor explizit freigegeben werden muss, da ansonsten keine VB-Verweise hinzugefügt/gelöscht/modifiziert werden können :
Unter Excel 2003 : "Extras - Makros - Sicherheit - Vertrauenswürdige Herausgeber - Zugriff auf VB-Projekt vertrauen"
Unter Excel 2007 : "Office-Logo - Excel-Optionen - Vertrauensstellungscenter - Einstellungen für das Vert. - Einstellungen für Makros - Zgriff auf das VB-Projektmodell vertrauen"
Diese Einstellungen müssen natürlich manuell (oder per Policy/Registry-Key) auf jedem PC einzeln vorgenommen werden !
Gruß, NoNet
Anzeige
AW: GUID für "MS Forms 2.0" ist in XL2007 identisch
07.11.2008 10:51:00
Reinhard
Hallo NoNet,
danke für die Hinweise zu XL2007.
Ja stimmt, bei XL2003 mußte ich seinerzeit auch Häkchen setzen (waren das nicht zwei Häkchen?, egal).
Das ist natürlich ein Dilemma, ohne Häkchen wird der Code der xla nicht starten, also kann ich in der xla auch keinen Hinweis geben welche Häkchen und Verweise gestzt werden müßten:-(
Also werde ich dann in diesem Fall weglassen per Code den Verweis auf MS Forms 2.0 zu setzen. Dort wo man später die xla herunterladen kann im Netz erläutere ich dann halt was alles zu tun ist um die xla zum Funktionieren zu bringen.
Danke dir und natürlich auch ransi
Reinhard
Anzeige

141 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige