Lancer Optimisation à partir d'une macro
2 participants
Page 1 sur 1
Lancer Optimisation à partir d'une macro
Bonjour,
j'aimerai savoir comment lancer plusieurs optimisations à la suite, grâce à une macro.
L'optimisation est déjà entièrement paramétrée. Je me sert de la fonction optimizer de CATIA. J'ai déjà codé (très simplement) comment trouver la bonne optimisation dans mon arbre et faire la boucle. Ce que je voudrai maintenant c'est la lancer. en gros remplacer le clique de la souris sur "Run Optimization".
Quelqu'un à une idée?
Ci-dessous le début de mon code :
Sub Launch_optim()
Dim analysisDocument1 As AnalysisDocument
Dim selection1 As Selection
Dim analysisManager1 As AnalysisManager
Dim analysisModels1 As AnalysisModels
Set analysisDocument1 = CATIA.ActiveDocument
Set analysisManager1 = analysisDocument1.Analysis
'checkname = analysisManager1.Name
Set analysisModels1 = analysisManager1.AnalysisModels
For i = 2 To 12
Set optim1 = analysisManager1.Relations.Optimizations.Item(i) 'selecting the optimization function already set up
'checkname = optim1.Name 'for debugging only, used to verify the name of the optimization currently selected
'ici je voudrais mettre un code du genre : "optim1.run"
Next
End Sub
En vous remerciant
Charly
j'aimerai savoir comment lancer plusieurs optimisations à la suite, grâce à une macro.
L'optimisation est déjà entièrement paramétrée. Je me sert de la fonction optimizer de CATIA. J'ai déjà codé (très simplement) comment trouver la bonne optimisation dans mon arbre et faire la boucle. Ce que je voudrai maintenant c'est la lancer. en gros remplacer le clique de la souris sur "Run Optimization".
Quelqu'un à une idée?
Ci-dessous le début de mon code :
Sub Launch_optim()
Dim analysisDocument1 As AnalysisDocument
Dim selection1 As Selection
Dim analysisManager1 As AnalysisManager
Dim analysisModels1 As AnalysisModels
Set analysisDocument1 = CATIA.ActiveDocument
Set analysisManager1 = analysisDocument1.Analysis
'checkname = analysisManager1.Name
Set analysisModels1 = analysisManager1.AnalysisModels
For i = 2 To 12
Set optim1 = analysisManager1.Relations.Optimizations.Item(i) 'selecting the optimization function already set up
'checkname = optim1.Name 'for debugging only, used to verify the name of the optimization currently selected
'ici je voudrais mettre un code du genre : "optim1.run"
Next
End Sub
En vous remerciant
Charly
Dernière édition par Saïf'ty le Lun 23 Juin 2014 - 14:08, édité 1 fois
Saïf'ty- actif
- Messages : 32
Date d'inscription : 11/01/2013
Localisation : La Rochelle
Re: Lancer Optimisation à partir d'une macro
Je pige pas trop ce que tu veux, à un moment ou un autre il faut fatalement que tu cliques sur un bouton pour lancer la macro. (elle ne se lancera pas même si tu y pense très fortement ...)
Guss_- Admin
- Messages : 530
Date d'inscription : 08/01/2010
Re: Lancer Optimisation à partir d'une macro
Oui, c'est pas le problème.
Au début de mon code je clique sur un bouton pour le lancer. Ce que je voudrais, c'est la ligne de commande qui permait de lancer des optimisation à partir d'une macro. les optimisations se trouvent dans le module "Product Engineering Optimizer".
Au début de mon code je clique sur un bouton pour le lancer. Ce que je voudrais, c'est la ligne de commande qui permait de lancer des optimisation à partir d'une macro. les optimisations se trouvent dans le module "Product Engineering Optimizer".
Saïf'ty- actif
- Messages : 32
Date d'inscription : 11/01/2013
Localisation : La Rochelle
Re: Lancer Optimisation à partir d'une macro
Je n'ai jamais utilisé le module d'optimisation alors je ne pourrait te dire exactement, mais uniquement des idées.
As tu essayé l'enregistreur de macros en lançant une optimisation pour voir les lignes de code que ça exécuterait, dans la cas ou l'enregistreur capture ça ?
As tu essayé l'enregistreur de macros en lançant une optimisation pour voir les lignes de code que ça exécuterait, dans la cas ou l'enregistreur capture ça ?
Guss_- Admin
- Messages : 530
Date d'inscription : 08/01/2010
Re: Lancer Optimisation à partir d'une macro
Oui, mais il n'enregistre pas cette partie. J'ai trouvé dans la documentation CATIA/VBA un paragraphe qui dit un truc du genre :
Sub Run()
Permet de lancer une optimisation, avec les parametres définis plus tôt.
Mais pas d'autres explications...
Merci pour ton aide
Sub Run()
Permet de lancer une optimisation, avec les parametres définis plus tôt.
Mais pas d'autres explications...
Merci pour ton aide
Saïf'ty- actif
- Messages : 32
Date d'inscription : 11/01/2013
Localisation : La Rochelle
Re: Lancer Optimisation à partir d'une macro
J'ai jette un œil à ton code
J'ai a jouté la ligne
Dim optim1 As Optimization
qui permet de definir optim1 comme objet optimistion et finalement de voir la listes des méthodes et propriétés lié.
Dans la liste on a bien "run"
du coup ça te dis quoi justement lorsque tu fais
"optim1.run"
?
- Code:
Sub Launch_optim()
Dim analysisDocument1 As AnalysisDocument
Dim selection1 As Selection
Dim analysisManager1 As AnalysisManager
Dim analysisModels1 As AnalysisModels
Set analysisDocument1 = CATIA.ActiveDocument
Set analysisManager1 = analysisDocument1.Analysis
'checkname = analysisManager1.Name
Dim optim1 As Optimization
Set analysisModels1 = analysisManager1.AnalysisModels
For i = 2 To 12
Set optim1 = analysisManager1.Relations.Optimizations.Item(i) 'selecting the optimization function already set up
'checkname = optim1.Name 'for debugging only, used to verify the name of the optimization currently selected
'ici je voudrais mettre un code du genre : "optim1.run"
Next
End Sub
J'ai a jouté la ligne
Dim optim1 As Optimization
qui permet de definir optim1 comme objet optimistion et finalement de voir la listes des méthodes et propriétés lié.
Dans la liste on a bien "run"
du coup ça te dis quoi justement lorsque tu fais
"optim1.run"
?
Guss_- Admin
- Messages : 530
Date d'inscription : 08/01/2010
Re: Lancer Optimisation à partir d'une macro
Super ! çà a fonctionné!
erreur très très bête, j'ai simplement pas déclarer optim1 comme tu l'as fait.
Merci ! je mets le post comme résolu!
erreur très très bête, j'ai simplement pas déclarer optim1 comme tu l'as fait.
Merci ! je mets le post comme résolu!
Saïf'ty- actif
- Messages : 32
Date d'inscription : 11/01/2013
Localisation : La Rochelle
Guss_- Admin
- Messages : 530
Date d'inscription : 08/01/2010
Sujets similaires
» [RESOLU] Lancer une fonction Catia à partir d'une macro
» Macro Import d'un arbre catia à partir d'un fichier excel
» Utiliser "l'optimizer" à partir d'une macro, et choisir le "Gradient Algorithm With Constraints"
» Dernière ligne "non-nulle" d'un tableau excel à partir d'une macro CATIA
» "CREER A PARTIR DE"
» Macro Import d'un arbre catia à partir d'un fichier excel
» Utiliser "l'optimizer" à partir d'une macro, et choisir le "Gradient Algorithm With Constraints"
» Dernière ligne "non-nulle" d'un tableau excel à partir d'une macro CATIA
» "CREER A PARTIR DE"
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum