Aller au contenu

demande d\'aide svp


Messages recommandés

Posté(e)

Svp

 

J’ai besoin d’une routine qui peut me selectionner tous les blocs qui existe dans mon dessin courant on les affectant à une variable .

 

j'ai fait ça mais il ne selectionne que le bloc que je ai demadé quand je veux utiliser "acselectionsetall" ça marche pas

 

merci en avance de votre aide

 

voilà le petit programme qui me cherche un seule bloc dans tout le dessin !!

 

Sélection du bloc spécifié. ' ---------------------------------------------------

Dim EnTete As Boolean

Rangee = 1

EnTete = False

If selection_existe("TEMP") Then

Set Selection = ThisDrawing.SelectionSets("TEMP")

Selection.Clear

Else

Set Selection = ThisDrawing.SelectionSets.Add("TEMP")

End If

 

Dim Point1(2) As Double

Dim Point2(2) As Double

Dim Codes(1) As Integer

Dim Valeurs(1) As Variant

Point1(0) = 0#: Point1(1) = 0#: Point1(2) = 0#

Point2(0) = 0#: Point2(1) = 0#: Point2(2) = 0#

 

' On recherche le bloc FICHIER

 

Codes(0) = 0: Valeurs(0) = "INSERT"

Codes(1) = 2: Valeurs(1) = " FICHIER"

 

Selection.Select acSelectionSetAll, Point1, Point2, Codes, Valeurs

 

 

 

Posté(e)

Ne précise pas les points si tu veux sélectionner dans tout le dessin:

 

Selection.Select acSelectionSetAll, , , Codes, Valeurs

Posté(e)

je ne sais pas pourquoi il ce plante qand il arrive à ça : "Dim Entite As AcadBlockReference"

 

stp voilà le programme le but est de selectionner tout les attributs qui ce trouve dans le dessin courant et les mettre dans "temp" pour les réutilisés après

 

merci infinnement pour votre aide si précieuse !

 

 

 

' ---------------------------------------------------

'Section 4. Sélection du dessin en cours

' ---------------------------------------------------

Dim EnTete As Boolean

Rangee = 1

EnTete = False

If selection_existe("TEMP") Then

Set Selection = ThisDrawing.SelectionSets("TEMP")

Selection.Clear

Else

Set Selection = ThisDrawing.SelectionSets.Add("TEMP")

End If

 

Selection.Select acSelectionSetAll, Codes, Valeurs

' ---------------------------------------------------

'Section 4. Extraction des attributs.

' ---------------------------------------------------

Dim Entite As AcadBlockReference

 

For Each Entite In Selection

Matrice = Entite.GetAttributes

If EnTete = False Then

For Compte = LBound(Matrice) To UBound(Matrice)

If StrComp(Matrice(Compte).EntityName, "AcDbAttribute", 1) = 0 Then

Feuille.Cells(Rangee, Compte + 1).Value = Matrice(Compte).TagString

End If

Next Compte

End If

Rangee = Rangee + 1

 

For Compte = LBound(Matrice) To UBound(Matrice)

Feuille.Cells(Rangee, Compte + 1).Value = Matrice(Compte).TextString

Next Compte

EnTete = True

 

Next

 

' ---------------------------------------------------

'Section 6. effacer la selection "TEMP"

' ---------------------------------------------------

 

Public Function selection_existe(strnom As String) As Boolean

Dim control As Boolean

control = False

On Error Resume Next

Set objselection = ThisDrawing.SelectionSets(strnom)

If Err Then

Err.Clear

Set objselection = ThisDrawing.SelectionSets.Add(strnom)

If Not Err Then control = True

Else

control = True

End If

selection_existe = control

End Function

 

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é