Aller au contenu

Liaisons de données


SuperNoob

Messages recommandés

Salut, et bienvenue, par Minou !

 

Ce LISP pourrait il faire l'affaire ? Mon lien

 

Si besoin, pour charger et utiliser un LISP : Mon lien

 

Cordialy.

Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux.
Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage !
Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;])

Utilisateur d'AutoCAD 2021 sous Windows 10

Lien vers le commentaire
Partager sur d’autres sites

re bonjour,

Alors tout d'abord merci, bon j'ai réussi à faire fonctionner le Lisp, par contre j'y comprends rien au codage sad.gif pour le modifier, car j'ai besoin de choisir une ligne spécifique du fichier xls . est-ce qu'il existe un commande(simple si possible) un récupéré les données des "Liaisons de données". (P.S:je ne peux pas modifier le fichiers excel car il est utilisé aussi par le secrétariat et la compta.)

 

Lien vers le commentaire
Partager sur d’autres sites

Re.

 

Je te conseillerait de riposter ta question dans le forum LISP. Il y aura une meilleur visibilité pour ceux qui seront en mesure de la modifier.

 

Cordialy.

Je suis dysorthographique alors lâchez-moi les basques avec ça, je fait déjà de mon mieux.
Membre d'Extinction Rebellion, car pour sauver le monde il n'est jamais trop tard, amour et rage !
Pour écrire un vraie point médian (e·x·e·m·p·l·e) [Alt + 0183] ou ajout d'un raccourci clavier personnalisé (ex. [AltGr + ;])

Utilisateur d'AutoCAD 2021 sous Windows 10

Lien vers le commentaire
Partager sur d’autres sites

Avec ton fichier exemple, ceci pourrait être fait.

MAIS ce n'est pas une bonne méthode, il vaudrait mieux passer par des attributs ayant des étiquettes pour faire ce que je te propose en exemple

Que des textes simples ne seront pas gérable pour effectuer des mise à jours!

 

Donc juste pour montrer que c'est faisable, copie-colle le code directement en ligne de commande dans ton dessin exemple que tu as joins.

Refléchis aux attributs je te le conseille, ou alors (puisque tu as map) aux données d'objet.

((lambda ( / )
(setq ent (ssname (ssget "_X" '((0 . "ACAD_TABLE") (8 . "0"))) 0))
(setq l-read (mapcar 'cdr (vl-remove-if '(lambda (x) (/= (car x) 1)) (entget ent))))
(setq js (ssget "_X" '((0 . "TEXT") (8 . "0"))))
(setq
	AcDoc (vla-get-ActiveDocument (vlax-get-acad-object))
	Space
	(if (= 1 (getvar "CVPORT"))
		(vla-get-PaperSpace AcDoc)
		(vla-get-ModelSpace AcDoc)
	)
)
(repeat (setq n (sslength js))
	(setq dxf_ent (entget (setq txt (ssname js (setq n (1- n))))))
	(cond
		((eq (cdr (assoc 1 dxf_ent)) "numero") (setq value (car l-read)))
		((eq (cdr (assoc 1 dxf_ent)) "nom") (setq value (cadr l-read)))
		((eq (cdr (assoc 1 dxf_ent)) "prenom") (setq value (caddr l-read)))
		((eq (cdr (assoc 1 dxf_ent)) "adresse") (setq value (cadddr l-read)))
		((eq (cdr (assoc 1 dxf_ent)) "code postale") (setq value (car (cddddr l-read))))
		((eq (cdr (assoc 1 dxf_ent)) "ville") (setq value (cadr (cddddr l-read))))
		((eq (cdr (assoc 1 dxf_ent)) "societe") (setq value (caddr (cddddr l-read))))
		(T (setq value nil))
	)
	(cond
		(value
			(entdel txt)
			(setq nw_obj
				(vla-addMtext Space
					(vlax-3d-point (cdr (assoc 10 dxf_ent)))
					0.0
					value
				)
			)
		)
	)
)
))

 

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

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é