Fenetre active
2 participants
Page 1 sur 1
Fenetre active
Bonjour,
j ai créé un icone lié à une macro qui déverrouille/verrouille une vue dans les plans.(histoire de gagner du temps, sinon clic droit proprieté...)
La macro fonction si et seulement si je n ai qu'un seul Catia d'ouvert. Si par malheur j'ouvre une nouvelle fenêtre Catia et même si celle sur laquelle
je veux travaillé est active. bing, erreur incompatibilité de type.
donc si quelqu'un a une idée, merci d'avance.
Voici le code :
Raphael
j ai créé un icone lié à une macro qui déverrouille/verrouille une vue dans les plans.(histoire de gagner du temps, sinon clic droit proprieté...)
La macro fonction si et seulement si je n ai qu'un seul Catia d'ouvert. Si par malheur j'ouvre une nouvelle fenêtre Catia et même si celle sur laquelle
je veux travaillé est active. bing, erreur incompatibilité de type.
donc si quelqu'un a une idée, merci d'avance.
Voici le code :
- Code:
Sub CATMain()
Dim Catia As Object
Dim drawingDocument1 As DrawingDocument
Dim drawingSheets1 As DrawingSheets
Dim drawingSheet1 As DrawingSheet
Dim drawingViews1 As DrawingViews
Dim Sheetdraw As String, Sheetview As String
'---- initialisation catia"
On Error Resume Next
Set Catia = GetObject(, "CATIA.Application")
If Err.Number <> 0 Then
MsgBox ("pas de session catia trouvée")
Else
On Error GoTo 0
Set drawingDocument1 = Catia.ActiveDocument
Set drawingSheets1 = drawingDocument1.Sheets
Sheetdraw = drawingSheets1.ActiveSheet.Name
Set drawingSheet1 = drawingSheets1.Item(Sheetdraw)
Set drawingViews1 = drawingSheet1.Views
Sheetview = drawingViews1.ActiveView.Name
If Sheetview = "Main View" Then
MsgBox "activer la vue à deverouiller"
Else
Set drawingView1 = drawingViews1.Item(Sheetview)
If drawingView1.LockStatus = False Then
drawingView1.LockStatus = True
Else: drawingView1.LockStatus = False
End If
End If
End If
End Sub
Raphael
Dernière édition par raphael_59240 le Mar 12 Juil 2016 - 8:18, édité 1 fois
raphael_59240- actif
- Messages : 127
Date d'inscription : 28/03/2015
Age : 53
Localisation : dunkerque
Re: Fenetre active
Salut Raphaël,
J'ai modifié la partie "initialisation CATIA" de ton code et chez moi ça fonctionne.
Je pense qu'il n'est pas utile de déclarer l'application CATIA.
(lignes modifiées identifiées avec '***)
J'ai modifié la partie "initialisation CATIA" de ton code et chez moi ça fonctionne.
Je pense qu'il n'est pas utile de déclarer l'application CATIA.
(lignes modifiées identifiées avec '***)
- Code:
Sub CATMain()
'Dim Catia As Object ***
Dim drawingDocument1 As DrawingDocument
Dim drawingSheets1 As DrawingSheets
Dim drawingSheet1 As DrawingSheet
Dim drawingViews1 As DrawingViews
Dim Sheetdraw As String, Sheetview As String
'---- initialisation catia"
'***
On Error Resume Next
Set drawingDocument1 = Catia.ActiveDocument
'Set Catia = GetObject(, "CATIA.Application")***
If Err.Number <> 0 Then
MsgBox ("pas de session catia trouvée")
Exit Sub
ElseIf (InStr(drawingDocument1.Name, ".CATDrawing")) = 0 Then
MsgBox ("La fenêtre active doit être un CATDrawing")
Exit Sub
End If
Err.Clear
On Error GoTo 0
'***
Set drawingSheets1 = drawingDocument1.Sheets
Sheetdraw = drawingSheets1.ActiveSheet.Name
Set drawingSheet1 = drawingSheets1.Item(Sheetdraw)
Set drawingViews1 = drawingSheet1.Views
Sheetview = drawingViews1.ActiveView.Name
If Sheetview = "Main View" Then
MsgBox "activer la vue à deverouiller"
Else
Set drawingView1 = drawingViews1.Item(Sheetview)
If drawingView1.LockStatus = False Then
drawingView1.LockStatus = True
Else: drawingView1.LockStatus = False
End If
End If
'End If***
End Sub
lumpazepfel- Fédérateur
- Messages : 319
Date d'inscription : 02/11/2015
Localisation : Ensisheim
Re: Fenetre active
merci beaucoup, c est bien pratique et plus rapide
raphael_59240- actif
- Messages : 127
Date d'inscription : 28/03/2015
Age : 53
Localisation : dunkerque
Sujets similaires
» Fermer une fenêtre par VBA
» afficher la fenetre propriété par macro
» Fermeture fenêtre rapport d'import .step
» Rechercher un texte dans une vue active
» Récupérer le nom d'une part active dans un produit ouvert
» afficher la fenetre propriété par macro
» Fermeture fenêtre rapport d'import .step
» Rechercher un texte dans une vue active
» Récupérer le nom d'une part active dans un produit ouvert
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|