lili2006 Posté(e) le 2 janvier 2011 Posté(e) le 2 janvier 2011 Bonne année 2011 à toutes et tous, Avec ces fonctions bien connues des Express, j'obtiens : http://img.ahst.fr/data/images/attinattou.jpg On connait également les différentes manips pour arriver à ce résultat ,.... Je voudrais pouvoir,avec ou sans faire de sélection (suivant le besoin ), récupérer les infos par choix du ou des attributs (dans cet exemple, un seul : "LONGUEUR_ARMA") directement sous Excel et sous cette forme: (C'est à dire sans le Handle ni le nom du ou des blocs, uniquement les étiquettes)=> Vous allez me dire :" t'as qu'à masquer ces deux colonnes",...Et c'est ce que je fais actuellement mais sur plus de 600 fichiers, je commence déjà à pleurer,...snif http://img.ahst.fr/data/images/attinafmf.jpg Est-ce qu'un lisp semblable existe déjà (sans parler de LXL que j'utilise pour d'autres manips "spécifiques") ? Bon les routines des Express vont bien déjà, mais vu le grand nombre de lots que j'ai à traiter, si je peux m'organiser autrement (et surtout SANS sélection pour ce gros projet), ce serait mieux,...:P (De plus je n'ai pas besoin de réinjecter ces valeurs dans le(s) plan(s), soit la commande "attin", mais cela pourrait être envisageable également dans certaines circonstances,...) Merci d'avance, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Patrick_35 Posté(e) le 3 janvier 2011 Posté(e) le 3 janvier 2011 Salut lili et tous mes voeux de bonne année, de bonne santé à vous tous. Quelque chose dans ce style ? (defun c:lili(/ att cla col ent feu fic lig nom xls nombl) (defun nombl(bl) (if (vlax-property-available-p bl 'effectivename) (vla-get-effectivename bl) (vla-get-name bl) ) ) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object)) nom [surligneur]"Un_bloc"[/surligneur] ; Nom du bloc ) (or lancer_excel (load (findfile "api_xls.lsp")) ) (or (setq xls (lancer_excel)) (setq xls (lancer_ooo)) ) (and xls (progn (and (setq fic (strcat (getvar "dwgprefix") (getvar "dwgname") ".xls")) (setq cla (nouveau_fichier xls fic)) (progn (and (ssget "x" (list (cons 0 "insert") (cons 2 (strcat "`**," nom)) (cons 66 1))) (progn (setq col 65 lig 1 feu (feuille_active cla) ) (vlax-for ent (setq sel (vla-get-activeselectionset doc)) (and (eq (nombl ent) nom) (foreach att (vlax-invoke ent 'getattributes) (ecrire_cellule cla feu (strcat (chr col) (itoa lig)) (vla-get-textstring att)) (setq col (1+ col)) ) (setq col 65 lig (1+ lig) ) ) ) (vla-delete sel) (sauver_fichier cla) (princ (strcat "\nCréation du fichier : " fic)) ) ) ) ) (and cla (fermer_fichier cla)) (fermer_appli (list xls cla)) ) ) (princ) ) ps : requiert Api_Xls Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lili2006 Posté(e) le 3 janvier 2011 Auteur Posté(e) le 3 janvier 2011 Re, L'année commence bien ! :D Merci Patrick et bonne et heureuse année à toi ainsi que ceux qui te sont proche. Sur chaque fichier je suis amené à rajouter deux colonnes, plus l'en tête du fichier => http://img.ahst.fr/data/images/mtrarma1.jpg Penses-tu qu'il soit possible de pointer vers un fichier Excel "gabarit" de ce type ou seul les deux premières colonnes seraient à remplir en fonction du plan désigné ? Un exemple Mais c'est déjà super comme ça ! :D :P Merci encore, Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Patrick_35 Posté(e) le 3 janvier 2011 Posté(e) le 3 janvier 2011 Merci lili, pour toi aussi et tous tes proches Donc, avec une gabarit(defun c:lili(/ att cla col ent feu fic gab lig nom xls nombl) (defun nombl(bl) (if (vlax-property-available-p bl 'effectivename) (vla-get-effectivename bl) (vla-get-name bl) ) ) (vl-load-com) (setq doc (vla-get-activedocument (vlax-get-acad-object)) [surligneur]nom "Nom_Bloc[/surligneur] [surligneur]gab "c:/test/gabarit.xls"[/surligneur] ) (or lancer_excel (load (findfile "api_xls.lsp")) ) (or (setq xls (lancer_excel)) (setq xls (lancer_ooo)) ) (and xls (progn (and (findfile (setq fic (strcat (vl-filename-directory gab) "/" (substr (getvar "dwgname") 1 (- (strlen (getvar "dwgname")) 3)) "xls"))) (vl-file-delete fic) ) (vl-file-copy gab fic) (setq cla (ouvrir_fichier xls fic)) (and (ssget "x" (list (cons 0 "insert") (cons 2 (strcat "`**," nom)) (cons 66 1))) (progn (setq col 65 lig 2 feu (feuille_active cla) ) (vlax-for ent (setq sel (vla-get-activeselectionset doc)) (and (eq (nombl ent) nom) (foreach att (vlax-invoke ent 'getattributes) (ecrire_cellule cla feu (strcat (chr col) (itoa lig)) (vla-get-textstring att)) (setq col (1+ col)) ) (setq col 65 lig (1+ lig) ) ) ) (vla-delete sel) (sauver_fichier cla) (princ (strcat "\nCréation du fichier : " fic)) ) ) (and cla (fermer_fichier cla)) (fermer_appli (list xls cla)) ) ) (princ) ) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lili2006 Posté(e) le 3 janvier 2011 Auteur Posté(e) le 3 janvier 2011 Re, Merci Patrick, :D ça marche Nickel Chrome ! Début d'année et je te dois déjà quelque chose,... :o :D :P Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Defun Posté(e) le 3 janvier 2011 Posté(e) le 3 janvier 2011 Début d'année et je te dois déjà quelque chose,... :o :D :P Rien du toutTu es un des membres les plus actifs et qui en plus prends la peine de faire des vidéos pour que les demandeurs comprennent bien.C'est un plaisir de t'aider et la moindre des choses vis à vis des services rendus. ps : tu aurais presque pu l'écrire (avec les facilitées d'Api_xls) @+
(gile) Posté(e) le 3 janvier 2011 Posté(e) le 3 janvier 2011 Defun = Patrick_35 ? Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Patrick_35 Posté(e) le 3 janvier 2011 Posté(e) le 3 janvier 2011 Defun = Patrick_35 ? Ah oui, je me suis planté de login ;) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
lili2006 Posté(e) le 3 janvier 2011 Auteur Posté(e) le 3 janvier 2011 Re, Je suis très touché pas ses propos,... :red: Surtout venant de toi Patrick qui en donne toujours plus (ainsi que certains qui se reconnaitrons sans pb,..) Il faut absolument que je dégage du tps pour me mettre au lisp, MAIS je ne suis pas encore prêt de le faire au détriment de mes étudiants ni de mes amis les plus chers,... En tout cas, en attendant, encore un grand merci pour ce coup de main Patrick, Je ne pensais pas un jour me sentir autant à l'aise sur un forum et créer des liens virtuels aussi fort,...Il me tarde de te rencontrer maintenant,... C'est un plaisir de t'aider et la moindre des choses vis à vis des services rendus. Oui, mais toi, personnellement, tu n'as rien à y gagner !! Donc, je te retourne le compliment (sauf que je me vois mal un jour t'aider,... :o Mais bon, ça, faut apprendre à l'accepter et c'est pas facile vis à vis de certaines personnes dont tu fais partie,...) ps : tu aurais presque pu l'écrire (avec les facilitées d'Api_xls) Il va falloir qu'un jour je soit digne de tes propos,... :exclam: Civil 3D 2025 - COVADIS_18.3b https://www.linkedin...3%ABt-95313341/
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant