AUCOTEC Service / Create Synergy - Connect Processes / Engineering Base ELCAD RUPLAN AUCOPLAN
Service    
Log in        Register        
       




Knowledge Base


      
Category: VBA for Applications

Question

KB103001 - Makro startet in EB 6.0 mit Kompilierungsfehler


Answer

SYMPTOME
Auf einem System mit installieren Engineering Base 6.0 starten Makros mit einem Kompilierungsfehler, die in einer früheren Engineering Base Version einwandfrei starteten.



Fehler eines geschützten MakrosFehler eines ungeschützten Makros


URSACHE
Nach der Notwendigkeit, die Entwicklerumgebung zu modernisieren, mussten einige Signaturen von Methoden im Engineering Base VBA Objektmodell geändert werden.



  • OpenWorksheetDirect

  • OpenWorksheetDirectEx

  • OpenWorkSheetWithFilter




Diese Methoden haben nun nicht mehr die Möglichkeit mit optionalen Parametern gefüllt zu werden. Es müssen für alle Parameter nun Standardwerde gesetzt werden.
Hinweis: Das Problem tritt nur auf, wenn optionale Parameter übergeben werden.


Lösung:
Code der eines dieser drei Methoden verwendet, muss gegen den dargestellten Code ersetzt werden.

Beispiele:
Vorhanden
Set oWrkSht = oItem.OpenWorksheetDirect(aucObjWire, ,,, 293)
Ersetzen durch
Set oWrkSht = oItem.OpenWorksheetDirect(aucObjWire, aucAttrUnspecified, aucCondEqual, “”, 293)

Vorhanden
Set oWrkSht = oItem.OpenWorksheetDirectEx(aucObjWire, ,,,, 293)
Ersetzen durch
Set oWrkSht = oItem.OpenWorksheetDirect(aucObjWire, aucAttrUnspecified, aucCondEqual, “”,aucWorksheetOpenDefault, 293)

Vorhanden
Set oWrkSht = oItem.OpenWorksheetWithFilter(oFilter, , 293)
Ersetzen durch
Set oWrkSht = oItem.OpenWorksheetWithFilter(oFilter, aucWorksheetOpenDefault, 293)


Hinweis: Um Änderungen an geschützten Makros zu vollziehen, muss zuvor der Schutzaufgehoben werden. Wenn nicht die Möglichkeit vorhanden ist, dies zu tun, bitte den Service kontaktieren.




Send via Email

  Print


 Copyright AUCOTEC AG