Aller au contenu

Gelés tous les calques sauf 2 en macro VBA


Messages recommandés

Invité fabdu91630
Posté(e)

Bonjour,

 

Je suis novice dans la programmation VBA et j'ai besoin d'aide :

 

J'ai besoin de créer une macro en VBA qui me permettrai de geler tous les calques sauf 2.

J'aifais cette petite macro mais ne fonctionne pas :

Sub test()

 

Dim i As Integer

 

 

For i = 0 To ThisDrawing.layers.Count - 1

 

If ThisDrawing.layers.objetName = "Y-EQP-SI" Then

 

ThisDrawing.layers(i).Freeze = False

Else

ThisDrawing.layers(i).Freeze = True

End If

Next i

End Sub

 

Quelqu'un aurait-t-il une idée ?

 

Cordialement,

 

Fabdu91630

Invité fabdu91630
Posté(e)

Bonjour Bryce,

 

Je viens d'essayer, il cela me marque "calque incorrect".

j'ai revérifier et le nom du calque est bien le bon.

 

???

Posté(e)

Attention à ne pas essayer de geler le calque courant.

De plus, apparemment il n'aime pas qu'on essaie de mettre la propriété Freeze à False quand elle est déjà à False... :casstet:

 

Le code ci-dessous a l'air de fonctionner :

 

Sub test()

Dim i As Integer
Dim l As AcadLayer

For i = 0 To ThisDrawing.Layers.Count - 1

   Set l = ThisDrawing.Layers(i)
   
   If l.Name <> "Y-EQP-SI" And l.Name <> ThisDrawing.ActiveLayer.Name Then
   
       l.Freeze = True
   
   ElseIf l.Freeze = True Then
   
       l.Freeze = False
   
   End If
Next i
End Sub

Invité fabdu91630
Posté(e)

 

Merci à tous, j'ai trouver la réponse que je voulais, pour ce qui veulent elle est ci dessous :

 

Sub GelerTousLesCalquesSaufDeux()

Dim calque As AcadLayer

 

'Parcourir tous les calques dans la collection Calques du dessin :

For Each calque In ThisDrawing.Layers

'Si le nom du calque n'est pas égal au nom des calques qu'on ne veut pas geler :

If calque.Name <> "Nom calque 1" And calque.Name <> "Nom calque 2" Then

'Geler le calque sauf le calque 0 qui ne peut pas être gelé

If calque.Name <> "0" Then calque.Freeze = True

End If

Next

End Sub

Invité fabdu91630
Posté(e)

Tous a fait, je suis d'accord. Je parlais du calque zero car de base c'est lui est courant.

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité