Comment faire des mises en plan multilingues

J'utilise SW en français et certains client me demandent des plans en anglais. Je voudrais savoir s'il existe un moyen de passer les annotations de perçage d'une langue à une autre simplement.

Bonjour,

Non tu es obligé de tout traduire toi même c'est chiant mais je n'ai jamais trouvé de solution pour ça.

Bonjour,

Avez-vous essayer de cocher dans :Options du système / Général" la case "Utiliser les noms de fonctions et de fichiers en anglais" ?

Bonjour,

Tu parles bien de ce type d'annotation :

Si oui, alors cela est possible par macro dans laquelle il faut lister toutes les annotations du plan et dans chacune d'elles remplacer la valeur en français par la valeur en anglais.

Quelque chose du genre :

Sub ChangePrefixe()

Dim swApp               As SldWorks.SldWorks
Dim swDrawing           As SldWorks.DrawingDoc
Dim swView              As View
Dim swDispDim           As SldWorks.DisplayDimension
Dim swAnn               As SldWorks.Annotation
Dim swDimension         As SldWorks.Dimension

Set swApp = Application.SldWorks
Set swDrawing = swApp.ActiveDoc
Set swView = swDrawing.GetFirstView

Do While Not swView Is Nothing
    Set swDispDim = swView.GetFirstDisplayDimension5
    Do While Not swDispDim Is Nothing
        Set swAnn = swDispDim.GetAnnotation
        Set swDimension = swDispDim.GetDimension
            
        Dim Pref As String
        Pref = swDispDim.GetText(swDimensionTextPrefix)
        Pref = Replace(Pref, "lamés", "Ma traduction")
            
        swDispDim.SetText swDimensionTextPrefix, Pref

        Set swDispDim = swDispDim.GetNext3
    Loop
    Set swView = swView.GetNextView
Loop

End Sub

Il faut bien sûr ajouter un certain nombre de contrôle pour être certain de ne modifier que ce que l'on veut, cela peut être améliorer et compléter pour aussi traduire d'autres éléments.

Cordialement,

[EDIT] Petite précision, cette manip rompt le lien avec la mise à jour automatique de l'annotation en cas de modification du 3D, il faut alors supprimer l'annotation puis la remettre avant de repasser la macro.

1 « J'aime »