Macro Excel Catia

Voir le sujet précédent Voir le sujet suivant Aller en bas

Macro Excel Catia

Message par Ponpon le Mar 28 Avr 2015 - 22:23

Bonjour à tous j'ai épluché le forum et je n'ai pas trouvé mes réponses! ^^

J'ai fais un bout de code pour lancer une macro dans un fichier excel, que je veux pouvoir sélectionner dans une fenêtre, à partir d'un autre fichier. Voici le code.

Code:

Sub Ponpon ()

Dim sChemin As String ' Chemin du fichier
Dim a As String
Dim b As String

sChemin = Application.GetOpenFilename

Workbooks.Open Filename:=sChemin
a = Right(sChemin, 20)
b = a & "!Sheet1.ecrire"

Application.Run b
'Application.Run "Etudecatiamacro.xlsm!Sheet1.ecrire" ref de la macro lancée

End Sub



Quand je copie colle dans VBA catia et que je lance la macro cela ne fonctionne pas. J'ai une erreur, il ne connaît plus rien.

sChemin = Application.GetOpenFilename sur cette ligne j'ai Run-time error '424' object required


J'espère que vous aurez une petit idée pour régler le problème.

Bonne journée!

Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par raphael_59240 le Mer 29 Avr 2015 - 20:23

Bonjour,

c est normale le terme workbooks est propre à Excel donc dans vb catia pas possible.

voila ce que j'utilise pour ouvrir un fichier excel:


Code:

Excel.Visible = False ''''pour ne pas voir le fichier ouvert et recup des donnes dans des cellules, feuille...

Chemin = CATIA.FileSelectionBox("Selectionner le fichier nomenclature", "*.xlsx", CatFileSelectionModeOpen) ''''permet d'avoir le chemin complet du fichier
Excel.Workbooks.Open FileName:=Chemin
.
.
.
.
Excel.Workbooks(Split(Right(Chemin, 20), "\")(1)).Close False ''''pour fermer le fichier en question sans sauvegarde... je prend 20 caractere pour recup uniquement le nom de fichier.


je pense que ça pourra t'aider




à plus

raphael Laughing

raphael_59240
actif
actif

Messages : 123
Date d'inscription : 28/03/2015
Age : 46
Localisation : dunkerque

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Ponpon le Mer 29 Avr 2015 - 21:57

Salut Raphaël,

Merci beaucoup pour ta réponse!
C'est presque parfait, J'ai une erreur sur la ligne: Excel.Workbooks.Open FileName:=Chemin

Il me dit ne pas comprendre la ligne.

bate


Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par raphael_59240 le Mer 29 Avr 2015 - 22:54

ah oui... j ai oublie de te donner ceci

Code:

dim  Excel As Object
dim chemin as string

On Error Resume Next
Set Excel = GetObject(, "Excel.Application")
If Err.Number <> 0 Then
    Set Excel = CreateObject("Excel.Application")
End If
On Error GoTo 0



raphael_59240
actif
actif

Messages : 123
Date d'inscription : 28/03/2015
Age : 46
Localisation : dunkerque

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Ponpon le Jeu 30 Avr 2015 - 0:00

Voilà la solution qui fonctionne. Il me reste à lancer la macro interne au fichier sélectionné. Encore une fois si tu as une idée. ^^

Je cherche de mon coté mais je n'ai rien de bon.

Code:

Sub EXCELTDBS()
   
    Dim Excel
    Dim Chemin

    On Error Resume Next
    Set Excel = GetObject(, "Excel.Application")
    If Err.Number <> 0 Then
        Set Excel = CreateObject("Excel.Application")
    End If
    On Error GoTo 0
 
  Excel.Visible = False

Chemin = CATIA.FileSelectionBox("Selectionner le TDBS", "*.xlsm", CatFileSelectionModeOpen) ''''permet d'avoir le chemin complet du fichier
MsgBox Chemin
Set xl = CreateObject("excel.Application")
xl.visible=true
xl.workbooks.open(Chemin)


End Sub

Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par raphael_59240 le Jeu 30 Avr 2015 - 0:07

dans ton code supprime excel.visible , c est inutile pour toi

raphael_59240
actif
actif

Messages : 123
Date d'inscription : 28/03/2015
Age : 46
Localisation : dunkerque

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par raphael_59240 le Jeu 30 Avr 2015 - 0:12

Code:
Sub EXCELTDBS()
    
    Dim Excel
    Dim Chemin

    On Error Resume Next
    Set Excel = GetObject(, "Excel.Application")
    If Err.Number <> 0 Then
        Set Excel = CreateObject("Excel.Application")
    End If
    On Error GoTo 0

Chemin = CATIA.FileSelectionBox("Selectionner le TDBS", "*.xlsm", CatFileSelectionModeOpen) ''''permet d'avoir le chemin complet du fichier
Excel.Workbooks.Open FileName:=Chemin


aucun intérêt de mettre xl.workbooks.open(Chemin)

ce qu j'ai au dessu marche tres bien....


Dernière édition par raphael_59240 le Jeu 30 Avr 2015 - 0:25, édité 2 fois

raphael_59240
actif
actif

Messages : 123
Date d'inscription : 28/03/2015
Age : 46
Localisation : dunkerque

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par raphael_59240 le Jeu 30 Avr 2015 - 0:23

ce que je peux te conseilller:

tu vas dans thisworkbook et ensuite tu fais un
Code:

Private Sub Workbook_Open()
.....

call toto

.....
End Sub
et la tu lance ta macro par un call toto


A+
Laughing

raphael_59240
actif
actif

Messages : 123
Date d'inscription : 28/03/2015
Age : 46
Localisation : dunkerque

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Ponpon le Jeu 30 Avr 2015 - 2:27

C'est bon tout fonctionne merci beaucoup!Exclamation cheers cheers cheers

Pour déployer cet outils j'aimerai faire un programme qui installe directement le bouton qui va bien dans catia. C'est une question bonus! ^^ affraid


Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par raphael_59240 le Jeu 30 Avr 2015 - 3:19

ah combien ton bonus?Question
pour ta réponse va voir ci tu aura je pense :
http://catiav5.forumactif.org/t671-association-d-une-macro-a-une-icone
si pas le cas fais savoir car j ai un bouton qui est creer et associe a ma macro



raphael_59240
actif
actif

Messages : 123
Date d'inscription : 28/03/2015
Age : 46
Localisation : dunkerque

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Ponpon le Ven 1 Mai 2015 - 1:29

C'est pas de créer une icone dans catia mon problème. C'est de réussir à faire un programme .bat ou .exe qui installe le répertoire macro + le bouton dans catia. ^^

Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Guss_ le Jeu 7 Mai 2015 - 21:05

Je ne suis pas sur que ce soit possible, à moins de le faire en tant qu'administrateur avec le outils d'administration Catia pour créer un nouvel environnement de base qui sera utilisé par la suite par les utilisateurs. Je n'en sais pas plus.
C'est dans ce genre de formation que tu pourrais trouver ce que tu veux je pense :
http://www.3ds.com/partners/partnership-programs/software-partners/resources-services/developer-training/caa-v5-for-catia-getting-started/

Guss_
Fédérateur
Fédérateur

Messages : 498
Date d'inscription : 08/01/2010

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Ponpon le Jeu 7 Mai 2015 - 23:39

Salut Guss_,

C'est vrai que ca n'a pas l'air simple du tout. Il ne me reste plus qu'à faire une notice explicative de la marche à suivre.



Bonne journée à tous!

Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Ponpon le Mar 9 Juin 2015 - 3:28

Bonjour à tous je reviens vers vous parce que catia me jette sur un bout de code qui fonctionnait avant...

Code:
Sub BOM()


   Set productDocument1 = CATIA.ActiveDocument

   Set product1 = productDocument1.Product

   Set assemblyConvertor1 = product1.GetItem("BillOfMaterial")

   Dim arrayOfVariantOfBSTR1(4)
   arrayOfVariantOfBSTR1(0) = "Quantity"
   arrayOfVariantOfBSTR1(1) = "Part Number"
   arrayOfVariantOfBSTR1(2) = "Type"
   arrayOfVariantOfBSTR1(3) = "Nomenclature"
   arrayOfVariantOfBSTR1(4) = "Revision"
   assemblyConvertor1.SetCurrentFormat arrayOfVariantOfBSTR1

   Dim arrayOfVariantOfBSTR2(1)
   arrayOfVariantOfBSTR2(0) = "Quantity"
   arrayOfVariantOfBSTR2(1) = "Part Number"
   assemblyConvertor1.SetSecondaryFormat arrayOfVariantOfBSTR2

assemblyConvertor1.Print "XLS", "C:\Temp\Bom.xls",product1



End Sub

C'est la dernière ligne qui pose problème..

assemblyConvertor1.Print "XLS", "C:\Temp\Bom.xls",product1


Merci pour votre aide! ^^

Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Guss_ le Mer 10 Juin 2015 - 19:33

Euh, quel problème ? on peut pas deviner ce que ton écran affiche :/

Guss_
Fédérateur
Fédérateur

Messages : 498
Date d'inscription : 08/01/2010

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Ponpon le Mer 20 Jan 2016 - 5:00

Bonjour à tous,

J'aimerais lancer la commande mesure d'inertie et exporter le fichier en texte pour l'enregistrer dans un répertoire comme le fait manuellement le logiciel. J'ai essayé l'enregistrement de macro mais il ne se passe rien. bate

Auriez-vous des idées pour lancer cette commande?!

Bonne soirée! Smile Smile Smile

Ponpon
timide
timide

Messages : 16
Date d'inscription : 28/04/2015
Localisation : Lyon

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Guss_ le Mer 20 Jan 2016 - 20:45

Salut, tu devrais poser cette question dans un nouveau sujet, non ?

Guss_
Fédérateur
Fédérateur

Messages : 498
Date d'inscription : 08/01/2010

Revenir en haut Aller en bas

Re: Macro Excel Catia

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum