CadXP: macro pour sélectionner plusieurs blocs - CadXP

Aller au contenu

  • 3 Pages +
  • 1
  • 2
  • 3
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

macro pour sélectionner plusieurs blocs

#1 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 13:51

Bonjour,

pourriez vous m'aider pour faire une macro ou un script qui me permettrait de sélectionner "bloc XXX" et " bloc YYY"
pour ensuite les copier en 0,0,0 et les recoller dans une autre plan?

Merci pour votre aide.

Jonathan
0

#2 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 17 novembre 2020 - 13:58

Hello,

Tout est possible si le probleme est bien poser ^^ (et surtout si le lecteur interprète bien ce que tu demandes xD)

Moi je peux te faire une macro pour prendre :
- Tous les blocs de ton dessin de tel nom et les déplacer vers un autre dessin en 0,0,0
- Déplacer les blocs que tu vas sélectionner en amont (donc pas besoin d'entrer un nom)
- ...

je vois que tu vas avoir x blocs a copier en 0,0,0 mais il vont se superposer non ? vaudrait peut-etre mieux les mettre l'un a coté de l'autre ?
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#3 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 14:03

Voir le messageCurlygoth, le 17 novembre 2020 - 13:58 , dit :

Hello,

Tout est possible si le probleme est bien poser ^^ (et surtout si le lecteur interprète bien ce que tu demandes xD)

Moi je peux te faire une macro pour prendre :
- Tous les blocs de ton dessin de tel nom et les déplacer vers un autre dessin en 0,0,0
- Déplacer les blocs que tu vas sélectionner en amont (donc pas besoin d'entrer un nom)
- ...

je vois que tu vas avoir x blocs a copier en 0,0,0 mais il vont se superposer non ? vaudrait peut-etre mieux les mettre l'un a coté de l'autre ?


Bonjour,

Merci pour ton intervention.
En effet, je cherche simplement une macro pour sélectionner dans un plan et en une fois le bloc1,bloc2, bloc3 pour ensuite les copier en point de base 0,0,0
Les blocs ne vont pas se superposer pour répondre à ta question.
0

#4 L'utilisateur est hors-ligne   Steven 

  • ceinture rouge et blanche 7em dan
  • Groupe : Membres
  • Messages : 3 854
  • Inscrit(e) : 03-mars 03
  • LocationDans le TARDIS

Posté 17 novembre 2020 - 14:04

Salut,

Tu peux le faire avec la sélection Rapide.

Commande: SELECTRAP

Dans la boîte de dialogue, à type d'objet, tu choisis Référence de bloc. Dans les propriétés, tu choisis Nom, puis tu coches, dans l'opérateur, tu laisse = Egal à puis tu choisi le nom du premier bloc à sélectionner dans Valeur.
Puis en bas de la fenêtre, tu coches Ajouter au jeu de sélection courant puis tu cliques sur OK. Tu relancex la commande de sélection rapide, puis tu sélectionnes le nom du second bloc à sélectionner puis tu cliques sur OK.
Tu auras tes blocs XXX et tes blocs YYY qui seront sélectionnés.
Steven________________________________________
Pour le taf; Windows (et ses emmerdes) sinon pas d'AutoCAD.
Pour la maison; Linux Mint et pas de problèmes. Mais pas d'AutoCAD.
En rêve; AutoCAD sous Linux.
0

#5 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 14:07

Voir le messageSteven, le 17 novembre 2020 - 14:04 , dit :

Salut,

Tu peux le faire avec la sélection Rapide.

Commande: SELECTRAP

Dans la boîte de dialogue, à type d'objet, tu choisis Référence de bloc. Dans les propriétés, tu choisis Nom, puis tu coches, dans l'opérateur, tu laisse = Egal à puis tu choisi le nom du premier bloc à sélectionner dans Valeur.
Puis en bas de la fenêtre, tu coches Ajouter au jeu de sélection courant puis tu cliques sur OK. Tu relancex la commande de sélection rapide, puis tu sélectionnes le nom du second bloc à sélectionner puis tu cliques sur OK.
Tu auras tes blocs XXX et tes blocs YYY qui seront sélectionnés.


Oui, c'est que je fais mais cela prend énormément de temps.
J'ai pas mal de fichiers a traiter.
Sinon oui, pour le faire une fois ainsi j'aurai utiliser ta solution.
0

#6 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 17 novembre 2020 - 14:11

Donc tu veux parcourir plein de dessin ".dwg" pour y repérer tes bloc de nom (bloc1 etc..) et les importer dans un dessin vierge ?

mais tu vas les avoir en plusieurs fois non ?

tu veux pas plutot les compter ? et coller les blocs avec leur nombre a coté ?

je comprends plus

tu veux taper le nom des bloc ou en selectionner plusieurs ? pour ensuite que le programme fasse ta manip ?
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#7 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 14:18

Voir le messageCurlygoth, le 17 novembre 2020 - 14:11 , dit :

Donc tu veux parcourir plein de dessin ".dwg" pour y repérer tes bloc de nom (bloc1 etc..) et les importer dans un dessin vierge ?

mais tu vas les avoir un plusiuers fois non ?

tu veux pas plutot les compter ?

je comprends plus

tu veux taper le nom des bloc ou en sélectionner plusieurs ? pour ensuite faire que le programme fasse ta manip ?


Dans mon cas, j'ai plusieurs niveaux d'un énorme bâtiment pour lequel je veux sélectionner que les lecteurs de badges pour les copier et coller dans mes plans vierges à moi.
Seulement voilà, je constate qu'il y a en moyenne par niveau 9 références différentes de lecteurs de badges et ceux ci sont mis dans un calque avec d'autres trucs qui n'ont rien à voir et qui ne m’intéresse pas.
Donc c'est pour cela, je souhaitai créer un bouton qui me permettrait de sélectionner automatiquement c est 9 références de lecteur en une fois.
0

#8 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 17 novembre 2020 - 14:28

Voir le messageJbrosteaux, le 17 novembre 2020 - 14:18 , dit :

Dans mon cas, j'ai plusieurs niveaux d'un énorme bâtiment pour lequel je veux sélectionner que les lecteurs de badges pour les copier et coller dans mes plans vierges à moi.
Seulement voilà, je constate qu'il y a en moyenne par niveau 9 références différentes de lecteurs de badges et ceux ci sont mis dans un calque avec d'autres trucs qui n'ont rien à voir et qui ne m’intéresse pas.
Donc c'est pour cela, je souhaitai créer un bouton qui me permettrait de sélectionner automatiquement c est 9 références de lecteur en une fois.



ok et tes "différents niveaux" sont différents DWG ? (car en références ?)

(Je comprends toujours pas pourquoi tu veux les copier car si c'est les memes et qu'ils ont a des niveaux différents, il vont forcément se superposer XD)
(Je t'avouerais que compter c'est tellement plus rapide que de les mettre dans un nouveau dessin XD)

mais bon pourquoi pas ^^

et tes niveaux dans dans le meme dossier que ton dwg ? ou il faut que tu ailles chercher un ou plusieurs dossiers ?

pour la "sélection" de tes lecteurs de badges ils ont leur nom de bloc en commun ?
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#9 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 14:40

Voir le messageCurlygoth, le 17 novembre 2020 - 14:28 , dit :

ok et tes "différents niveaux" sont différents DWG ? (car en références ?)

(Je comprends toujours pas pourquoi tu veux les copier car si c'est les memes et qu'ils ont a des niveaux différents, il vont forcément se superposer XD)
(Je t'avouerais que compter c'est tellement plus rapide que de les mettre dans un nouveau dessin XD)

mais bon pourquoi pas ^^

et tes niveaux dans dans le meme dossier que ton dwg ? ou il faut que tu ailles chercher un ou plusieurs dossiers ?

pour la "sélection" de tes lecteurs de badges ils ont leur nom de bloc en commun ?


Mes niveaux sont sur des dwg différents.
Les plans DWG viennent d'un export REVIT MEP.
Ici, j'ai les tout derniers plans DWG que j'ai mis au propre suite à une conversion de REVIT vers Autocad.
pour la partie ELEC, c'est une autre maquette REVIT qui a été réalisée mais celle ci est plus ancienne et n'a pas tenue compte des derniere modification architectural.
Bref...

Moi j'ai repris les éléments elec de cette maquette que j'ai converti en DWG et voilà.
Alors pourquoi travailler avec revit et autacad sur le même truc?
Parceque dans mon équipe certains n'utilisent pas revit mais ils doivent quand même avancer sur l'étude de notre projet.

C'est plus de la popote en interne sur le pourquoi du comment mais j'ai besoin de procéder de cette manière.

Ici pour me faciliter la vie, je cherche à faire une macro pour sélectionner les bloc XXX- bloc YYY dans l'ensemble du vieux dwg pour ensuite les recoller dans mon nouveau fichier tout propre.

voilà l'explication....


0

#10 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 17 novembre 2020 - 14:53

a ^^ ben voila je comprend mieux deja !

donc le dwg où tu dois mettre tes blocs existent deja pas besoin de recreer un nouveau dwg

Je dois boucler sur tes references pour rechercher tes blocs qui ont le meme noms dans tes references et les mettre dans le dessin hote !
(donc pas besoin de les mettre tes blocs en 0,0,0 mais les remettre où il sont !

Si j'ai tout bon, je te fais ça (car sa parait aussi m'etre utile plus tard) je ne dis pas que tu l'auras se soir
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#11 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 14:58

Oui je sais que c'est pas toujours facile d'expliquer ainsi mais voilà.
Ah ben si tu as une idée, pour déjà qu'il me sélectionne les blocs que je souhaite en une opération et grâce à leur nom c'est top!
Maintenant je sais pas mais est qu'il y a moyen d'avoir une liste des blocs qui sont présent dans le DWG ?
0

#12 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 17 novembre 2020 - 15:01

Voir le messageJbrosteaux, le 17 novembre 2020 - 14:58 , dit :

Oui je sais que c'est pas toujours facile d'expliquer ainsi mais voilà.
Ah ben si tu as une idée, pour déjà qu'il me sélectionne les blocs que je souhaite en une opération et grâce à leur nom c'est top!
Maintenant je sais pas mais est qu'il y a moyen d'avoir une liste des blocs qui sont présent dans le DWG ?


Tout est possible !
C'est comme ça que je fais métrés / mes chiffrages et mes listes matériels et les intitulés de mes cartouches...

lis ma signature ^^
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#13 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 15:09

Voir le messageCurlygoth, le 17 novembre 2020 - 15:01 , dit :

Tout est possible !
C'est comme ça que je fais métrés / mes chiffrages et mes listes matériels et les intitulés de mes cartouches...

lis ma signature ^^


C'est super!
Merci pour ton aide en tout cas.
0

#14 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 17 novembre 2020 - 15:11

attend que je te fasse le truc déjà ^^

installe le module VBA pour autocad si c'est pas deja fait
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#15 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 17 novembre 2020 - 15:15

Malheureusement ici je n'ai pas les droits pour installer des modules complémentaires...
0

#16 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 17 novembre 2020 - 15:32

Voir le messageJbrosteaux, le 17 novembre 2020 - 15:15 , dit :

Malheureusement ici je n'ai pas les droits pour installer des modules complémentaires...


Image IPB

A... ben si tu n'as pas les autorisations...
je pourrais pas faire ton projet...

Faut te diriger vers une solutions en Vlisp ou Lisp (et ce n'est pas moi qui gére ce genre de code à parenthèse)

PS:par contre je ferai ton projet pour moi ;-)
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#17 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 18 novembre 2020 - 05:31

Je vais regarder pour installer le module sur mon pc privé ainsi je pourrai tester et si il faut je demanderai à notre service informatique de me l’installer .

C’est pour cela qu’à la base je pensais à une macro ou un script 🙂
0

#18 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 18 novembre 2020 - 07:02

Voir le messageCurlygoth, le 17 novembre 2020 - 15:32 , dit :

Image IPB

A... ben si tu n'as pas les autorisations...
je pourrais pas faire ton projet...

Faut te diriger vers une solutions en Vlisp ou Lisp (et ce n'est pas moi qui gére ce genre de code à parenthèse)

PS:par contre je ferai ton projet pour moi ;-)


Le module est installé.
J'ai trouvé ceci sur le net, peut etre que cela peut aider... moi j'y comprend pas grand chose
http://autocadvba.ca...16/8344759.html
0

#19 L'utilisateur est hors-ligne   Curlygoth 

  • ceinture verte
  • Groupe : Membres
  • Messages : 90
  • Inscrit(e) : 09-mai 19
  • LocationJuste devant toi

Posté 18 novembre 2020 - 09:16

j'utilise pas les sélectionsets car la tu n'en fera rien ca reviens a faire ce clic droit et selectionné le nom de ton bloc,
Je te propose une autre approche :
recupérer tes ".dwg" en référence
ouvrir l'un : trouver tes blocs / fle fermer passer au suivant
et a la fin placer tes blocs dans ton dessin hote
Je dessine sur Autocad depuis mes 16 ans, je fais tout avec 2D/3D etc...
Et maintennant ? Ben, je ne dessine quasiment plus...
Je programme pour que mon ordinateur travail à ma place
Et je créé des outils pour gérer planning, mail auto, rapport issu du dessin et j'en passe.
(Uniquement en VBA et VB.net / Sql)

Mon site Web (en cours de construction) : Site
0

#20 L'utilisateur est hors-ligne   Jbrosteaux 

  • ceinture noire
  • Groupe : Membres
  • Messages : 303
  • Inscrit(e) : 17-septembre 09

Posté 18 novembre 2020 - 09:21

Voir le messageCurlygoth, le 18 novembre 2020 - 09:16 , dit :

j'utilise pas les sélectionsets car la tu n'en fera rien ca reviens a faire ce clic droit et selectionné le nom de ton bloc,
Je te propose une autre approche :
recupérer tes ".dwg" en référence
ouvrir l'un : trouver tes blocs / fle fermer passer au suivant
et a la fin placer tes blocs dans ton dessin hote


Ok, essayons et on verras à l'utilisation :-)
0

Partager ce sujet :


  • 3 Pages +
  • 1
  • 2
  • 3
  • Vous ne pouvez pas commencer un sujet
  • Vous ne pouvez pas répondre à ce sujet

1 utilisateur(s) en train de lire ce sujet
0 membre(s), 1 invité(s), 0 utilisateur(s) anonyme(s)