|
CATIA V5 Programmierung : GetAsyncKeyState / KeyPressed / DOEvents
DanielFr. am 13.10.2009 um 15:19 Uhr (0)
Hallo,wenn das Makro läuft und du ESC drückst wird es doch automatisch abgebrochen. Dafür brauchst du IMHO die Funktion nicht ------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Sporadische teils unerklährliche Makrofehler
DanielFr. am 20.10.2009 um 05:50 Uhr (0)
Guten morgen, Zitat:das ich praktisch alle "Dim As" Angaben weggelassen habe. Weil die Programme anscheinend auch ohne funktionieren.Das solltest du auf gar keinen Fall machen! Das kann nämlich zu Speicherverwaltungsfehlern führen. Werden Variablen und Objekte nicht gedimmt werden sie während der direkten Kompilierung durch VB deklariert. Dies führt ggf. zu extrem hoher Speicherauslastung.Also BITTE immer alles "dimmen". Wird eine Funktion als restriced angezeigt dann wird das entsprechende Objekt als Obje ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : WorksheetFunction.CountIf funktioniert nicht
DanielFr. am 22.10.2009 um 13:45 Uhr (0)
Hallo,schau dir mal mein Beispiel im Anhang an. Hier habe ich auch noch eine Test-Exceldatei mit angehängt. Das Funktioniert so einwandfrei. Von dem her denke ich das du vor irgendeiner Excel Funktion nicht das Excel Objekt gehängt hast. Außerdem kannst du innerhalb von CATIA VB kein "xlUp" bzw. irgendwelche Excel-Konstanten verwenden. Diese funktionieren nur in Excel da Excel die entsprechende Library zum "übersetzen" in einen Long Wert mitliefert. Diese Lib könntest du auch in CATIA einbinden aber ich ha ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Visual Studio 2008 und CATscript/CATvbs/CATvba
DanielFr. am 22.10.2009 um 13:53 Uhr (0)
Hallo,du solltest dich ein bisschen mit VB.NET allgemein auseinandersetzen bevor du versuchst CATIA zu steuern. Zum Steuern eines Programms müssen nicht nur die Librarys eingebunden werden sondern auch die Objekte erzeugt werde. Da du innerhalb von VB.NET (im Zusammenhang mit CATIA) eh keinen IntelliSense hast würde ich dir kein early Binding (Dim CATIA As INFITF.Application) empfehlen sondern eher ein late Bindung (also Dim CATIA as Object, Dim myPart as Object, etc.).Den Code von Dominik würde ich wie fo ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Visual Studio 2008 und CATscript/CATvbs/CATvba
DanielFr. am 22.10.2009 um 14:30 Uhr (0)
Zitat:Original erstellt von V5Playaz:Hierfür ist CATvbs, bzw. CATScript völlig ausreichend, da ohne Benutzeroberfläche und innerhalb von CATIA.Ich hoffe das hilft dir.@Daniel:1. Ich nutze in VB2008 für meine CATIA-Tools IntelliSense und bin froh über diese Funktion.2. mit CreateObject("CATIA.Application") erzeugst du eine neue CATIA-Instanz, d.h. Catia wird neu geöffnet. Das würde aber zu Problemen führen, die richtige Projektumgebung/Release zu starten, falls mehrere auf dem PC verfügbar sind.grüße Domin ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Visual Studio 2008 und CATscript/CATvbs/CATvba
DanielFr. am 23.10.2009 um 07:53 Uhr (0)
Hallo,ja du entwickelst ein CATvba und kopierst den Code dann in ein CATScript / CATvbs. Die Funktionsaufrufe und Methoden von .NET sind nämlich ein wenig anders als die Funktionsaufrufe in VBA.------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Visual Studio 2008 und CATscript/CATvbs/CATvba
DanielFr. am 23.10.2009 um 09:13 Uhr (0)
Hi,ich habe dir doch deine Frage beantwortet So jetzt nochmal:1. Du entwickelst das Script mit dem internen Microsoft Visual Editor als CATvba in CATIA (ohne Userformen etc.)= Der Vorteil ist das du hier eine Autovervollständigung hast, Step-by-Step Debugging nutzen kannst und eine Überwachungsfunktion für Objekte und Variablen nutzen kannst2. Wenn du fertig bist kopierst du das Script so wie es ist ein ein CATscript rein und fertigVergiss einfach VB.NET das ist nur zum Entwickeln von komplexen Programmen ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Visual Studio 2008 und CATscript/CATvbs/CATvba
DanielFr. am 23.10.2009 um 10:17 Uhr (0)
Hallo Joachim,du benutzt kein VISUAL STUDIO sondern einen Microsoft Visual Basic Editor.VB.NET = Microsft Visual Studio 2008 (eigene Software)CATVba = CATIA - Tools - Macro - Visual Basic EditorSo jetzt zum Ablauf:1. Tools - Macro - Macros2. Ein PopUp Fenster geht auf (Macros) - Macro Libaries3. Ein weiteres PopUp Fenster geht auf (Macro Libraries) - Library type = VBA Projects - create new Libary4. Jetzt musst du nur noch den Pfad und Namen angeben und OK drücken5. Das neue VBA-Projekt wird zu den Librari ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Userform von Excel ausführen lassen
DanielFr. am 23.10.2009 um 13:24 Uhr (0)
Zitat:Original erstellt von Tstone:Hallo,die Lösung deines Problems ist nicht in der Frage ob early oder late binding genutzt wird zu finden. Wenn Excel nicht installiert ist kann dein Programm nicht funktionieren. Auch wenn du alle Excel- betreffende Variabeln umdeklarierst, endet dein Programm spätestens beim ersten Methodenaufruf oder bei der ersten Eigenschaftenzuweisung an Excel.Einer der häufigsten Fehler bei der Softwareautomation ist der Zugriff auf Objekte die eigentlich schon terminiert sind, d ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Userform von Excel ausführen lassen
DanielFr. am 14.10.2009 um 10:41 Uhr (0)
Hallo,ich habe kein Buch und auch noch nie in einem zu diesem Thema gelesen. Vom dem her kann ich dir da nicht weiterhelfen ------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Userform von Excel ausführen lassen
DanielFr. am 14.10.2009 um 09:17 Uhr (0)
Hallo HAW-Raptor,nach sicher ist das möglich. Hierzu gibt es innerhalb von Excel die Methode "Application.Run". Du musst dann den absoluten Pfad der Exceldatei sowie den Namen der Sub die die aufrufen willst an die Methode übergeben. Der Pfad sowie der Sub-Name können auch variabel gestaltet werden (.z.B. über eine "FileSelectionBox"). Der Ablauf des Makros sieht wie folgt aus:1. In CATIA wird die CATMain gestartet2. Bei einem variablen Excel-Pfadnamen wird eine "FileSelectionBox" aufgerufen und der Anwend ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Userform von Excel ausführen lassen
DanielFr. am 22.10.2009 um 08:23 Uhr (0)
Hallo,dazu musst du zuerst deine Arbeitsmappe (Workbook schließen ohne Speicherabfrage)Code:MyWB.Close Falsedann musst du noch Excel killen. Aber hier ist Vorsicht geboten den Excel reicht es nicht wenn man einfach sagt "Set myExcel = Nothing". Wenn du dies tust wirst du feststellen das Excel zwar aus der Taskleiste verschwindet aber die EXCEL.EXE noch in deinem Taskmanager läuft. Hier muss ein gezieltes Fensterhandel ran. Das ist schon nicht mehr so einfach. Im Anhang mal ein kleines Beispiel wie man Exce ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Userform von Excel ausführen lassen
DanielFr. am 22.10.2009 um 13:33 Uhr (0)
Zitat:Original erstellt von Tstone:Hallo,myExcel.Quit beendet Excel ohne Probleme.Hallo,nein das stimmt so nicht. Dies ist nur der Fall wenn Excel innerhalb eines Excel-VBAs beendet wird. Sobald ein Excel Objekt extern erzeugt wird kommt es auf die Binding vorm an. D.h. es ist immer sicherer Excel über den Fensterhandle zu beenden------------------MFG DanielSysteminformation | Inoffizielle CATIA Hilfeseite | CATIA FAQ | Suche | TraceParts (Normteile...) | 3D Content Central (noch mehr Normteile...)
|
In das Form CATIA V5 Programmierung wechseln |