[Résolu] Problème Macro: inserer propriétés perso

vos questions concernant les API SolidWorks

[Résolu] Problème Macro: inserer propriétés perso

Messagepar CLLC » Lun 26 Jan 2015, 13:43

Bonjour a tous

Je suis entrain de faire une macro pour écrire dans un fichier excel des propriétés personnalisés de fichiers 3D.
Et inversement, redéfinir les propriétés personnalisés du fichiers 3D via des "textbox".

Mon problème est au sujet des dates:

Imaginons que j'ai la valeur de fDateB = "26/01/2015" de type String.

Je l'insert dans les propriété perso du 3D(spécifique à la configration) de cette manière:

Code: Tout sélectionner
Dim swCustPropMgr As SldWorks.CustomPropertyManager
swCustPropMgr.Delete "DateindB" 'supprime la propriété DateindB si existante
swCustPropMgr.Add2 "DateindB", 64, fDateB ' ajoute la propriété DateindB


"64" correspond à "swCustomInfoDate" car il faut que la propriété sois sous forme de date

Jusque là tout vas bien, mais il est impossible de sauvegarder le fichier!

Lorsque que j'enregistre, j'ai un message d’erreur:
"Une erreur inconnue s'est produite lors de l’accès à chemindufichier"

Pour y remédier je dois juste ouvrir la fenêtre des propriétés perso de la pièce, et faire mine que j'édite quelquechose, mais sans rien modifier.
Par exemple dans la colonne 'type' je clique sur 'date' pour resélectionner 'date'. Puis là l'enregistrement marche.

J'ai également essayer de mettre la valeur de fDateB = 26/01/2015 de type Date juste pour essayer, mais ce ne change rien au problème.

Avez vous une solution?

Merci beaucoup
Dernière édition par CLLC le Lun 09 Fév 2015, 9:01, édité 2 fois.
CLLC
Padawan SolidWorks
 
Messages: 68
Inscription: Ven 06 Juin 2014, 9:42

Re: Problème Macro: inserer Date dans propriétés perso

Messagepar liryc » Lun 26 Jan 2015, 14:08

Sauf erreur de ma part via les macro c'est le format anglais des dates qu'il faut utiliser soit 1-26-2015 (si que 15 je doute qu'il interprète 2015 mais plutôt 1915)
liryc
Chevalier Jedi SolidWorks
 
Messages: 479
Inscription: Ven 02 Mar 2007, 8:14
Localisation: Paris - SW2009 SP5.0

Re: Problème Macro: inserer propriétés perso

Messagepar CLLC » Lun 26 Jan 2015, 16:27

Merci

Il comprend bien la date sous la forme "13/11/2014"

Mais après vérification, le problème ne semble pas venir des dates, ceci dit je ne sait pas d'ou ça vient précisément, tout ce que je sais c'est que ca vient de ce code là:

Code: Tout sélectionner
If cSW = 1 Then

                       'indice A
                        swCustPropMgr.Delete "DateindA"
                        swCustPropMgr.Add2 "DateindA", 64, fdatea
                        swCustPropMgr.Delete "TextindA"
                        swCustPropMgr.Add2 "TextindA", swCustomInfoText, fObjA
                        swCustPropMgr.Delete "DessA"
                        swCustPropMgr.Add2 "DessA", swCustomInfoText, fDessA
                        swCustPropMgr.Delete "LogoA"
                        swCustPropMgr.Add2 "LogoA", swCustomInfoText, LogoA
                        'indice B
                       
                        swCustPropMgr.Delete "DateindB"
                        swCustPropMgr.Add2 "DateindB", 64, fdateb
                        swCustPropMgr.Delete "TextindB"
                        swCustPropMgr.Add2 "TextindB", swCustomInfoText, fObjB
                        swCustPropMgr.Delete "DessB"
                        swCustPropMgr.Add2 "DessB", swCustomInfoText, fDessB
                        swCustPropMgr.Delete "LogoB"
                        swCustPropMgr.Add2 "LogoB", swCustomInfoText, LogoB
                        'indice C
                       
                        swCustPropMgr.Delete "DateindC"
                        swCustPropMgr.Add2 "DateindC", 64, fdatec
                        swCustPropMgr.Delete "TextindC"
                        swCustPropMgr.Add2 "TextindC", swCustomInfoText, fObjC
                        swCustPropMgr.Delete "DessC"
                        swCustPropMgr.Add2 "DessC", swCustomInfoText, fDessC
                        swCustPropMgr.Delete "LogoC"
                        swCustPropMgr.Add2 "LogoC", swCustomInfoText, LogoC
                        'indice D
                       
                        swCustPropMgr.Delete "DateindD"
                        swCustPropMgr.Add2 "DateindD", 64, fdated
                        swCustPropMgr.Delete "TextindD"
                        swCustPropMgr.Add2 "TextindD", swCustomInfoText, fObjD
                        swCustPropMgr.Delete "DessD"
                        swCustPropMgr.Add2 "DessD", swCustomInfoText, fDessD
                        swCustPropMgr.Delete "LogoD"
                        swCustPropMgr.Add2 "LogoD", swCustomInfoText, LogoD
                        'indice E
                       
                        swCustPropMgr.Delete "DateindE"
                        swCustPropMgr.Add2 "DateindE", 64, fdatee
                        swCustPropMgr.Delete "TextindE"
                        swCustPropMgr.Add2 "TextindE", swCustomInfoText, fObjE
                        swCustPropMgr.Delete "DessE"
                        swCustPropMgr.Add2 "DessE", swCustomInfoText, fDessE
                        swCustPropMgr.Delete "LogoE"
                        swCustPropMgr.Add2 "LogoE", swCustomInfoText, LogoE
                       
                        swCustPropMgr.Delete "TextindX"
                        swCustPropMgr.Add2 "TextindX", swCustomInfoText, fOF
                        swCustPropMgr.Delete "LogoX"
                        swCustPropMgr.Add2 "LogoX", swCustomInfoText, fLogoX
                       
End If


Alors oui c'est un peu une usine à gaz cette macro... :)
CLLC
Padawan SolidWorks
 
Messages: 68
Inscription: Ven 06 Juin 2014, 9:42

Re: Problème Macro: inserer propriétés perso

Messagepar CLLC » Mer 28 Jan 2015, 13:44

Apparemment le problème venait du fait d'écrire des propriétés perso Vide, dans le 3D!
CLLC
Padawan SolidWorks
 
Messages: 68
Inscription: Ven 06 Juin 2014, 9:42


Retourner vers Questions générales sur les API

 


  • Articles en relation
    Réponses
    Vus
    Dernier message

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 5 invités

banniere