ich arbeite gerade an einer Programmierung die sowohl auf 2013 (64bit) als auch auf 2016 (32bit) laufen soll.
Ich programmiere auf 2013 64bit.
Ich bin durch das Einfügen einer Word-Bibliothek auf ein Problem gestoßen. Die Word 15.0 wird bei Arbeiten auf 2016 automatisch auf Word 16.0 aktualisiert und auch gespeichert. Damit gibt es bei Rückkehr auf die 15er Version sofort Fehler.
Ich habe jetzt die nötigen Befehle im Workbook_open eingefügt, um fehlerhafte Bibliotheken zu lö _
schen und durch die aktuelle Version zu ersetzen. Ich habe hier viel herum experimentiert und _
sicherlich jetzt zuviel des Guten eingefügt.
Function WordDll(Optional Zufuegen As Boolean = False)
Dim objVBE As Object
On Error Resume Next
Set objVBE = ActiveWorkbook.VBProject.References
If Zufuegen Then
objVBE.AddFromGuid "{00020905-0000-0000-C000-000000000046}", 0, 0
Else
Dim refRef As Variant
For Each refRef In objVBE
If refRef.isbroken Then
objVBE.Remove refRef
ElseIf refRef.GUID = "{00020905-0000-0000-C000-000000000046}" Then
objVBE.Remove refRef
End If
Next
End If
Set objVBE = Nothing
On Error GoTo 0
End Function
Diese Routine arbeitet bei 2013 einwandfrei bei 2016 aber nicht, ohne jegliche Fehlermeldung.
Um jetzt feststellen zu können, welche Bibliotheken überhaupt bei 2016 eingebunden sind und _
welche Guid sie haben, versuche ich noch die übliche Routine:
Private Sub ListReferencesInProject()
Dim objVBE As Object
Dim oRef As Object
Dim strTemp As String
On Error Resume Next
Set objVBE = ActiveWorkbook.VBProject.References
For Each oRef In objVBE
strTemp = "Bezeichnung: " & oRef.Description & vbCrLf
strTemp = strTemp & "Name: " & oRef.Name & vbCrLf
strTemp = strTemp & "Pfad: " & oRef.fullpath & vbCrLf
strTemp = strTemp & "GUID: " & oRef.GUID & vbCrLf
strTemp = strTemp & "Standard-Verweis: " & oRef.BuiltIn
Debug.Print strTemp & vbCrLf
Next
Set objVBE = Nothing
On Error GoTo 0
End Sub
Aber selbst diese gibt bei 2016 nichts zurück. Die Schleife wird nur ein einziges Mal durchlaufen, dabei ist dann strTemp leer...
Unter 2013 sind folgende Bibliotheken eingebunden:
Visual Basic For Applications
Microsoft Excel 15.0 Object Library
OLE Automation
Microsoft Office 15.0 Object Library
Die Liste der 2016 habe ich momentan nicht zur Hand. Bin jetzt bei mir privat.
Ehrlich gesagt kann ich das nicht verstehen.
Hat jemand ähnliches erlebt und eine Lösung gefunden?
Vielen Dank,
Marc