Aller au contenu

Patrick_35

Membres
  • Compteur de contenus

    6 374
  • Inscription

  • Dernière visite

  • Jours gagnés

    30

Tout ce qui a été posté par Patrick_35

  1. Patrick_35

    insertion en masse

    Salut Bonus Puisque que ton objet est en vlisp, tu pourrais aussi faire (vla-move ojb (vlax-3d-point '(0.0 0.0 0.0)) (vlax-3d-point next_ins)) au lieu de (command "_.move" (entlast) "" "_none" ll "_none" next_ins) (je vais y arriver, je vais y arriver!!! Notre super Bonus reussira bientôt à se mettre au vlisp....) @+
  2. Patrick_35

    Rappel de commande lisp

    Salut Il y a une chose que je ne comprends pas. Pourquoi faire poser la question choix alors que tu les as directement avec tes boutons ? @+
  3. Ou encore plus subtile En utilisant un grread avec un réacteur sur le clic droit, mais ce sera en vlisp comme dans ce sujet ou encore celui-ci @+
  4. Patrick_35

    Liste de fichier

    J'ai fais une utilisation de cette routine ici Il suffit de virer les liens avec Excel et de modifier la fonction rechercher @+
  5. Patrick_35

    Lien Excel : Fermeture...

    Je suis content que tu es trouvé une solution par toi-même, mais je vais quand même regarder pour le faire directement depuis Excel @+
  6. Et avec la fonction type ? @+
  7. Ouui, mais forcement de suite, je reviens de stage ;) value et value2 fonctionne sue Excel97 alors que pour les autres versions, seul value2 marche. (Je ne l'ai découvert que très récemment) Ce doit être une évolution entre les différentes versions d'excel (vlax-invoke-method xl 'QUIT) (vlax-release-object xl) Ce que donne Tramber est excellent, il faut faire attention à la variable est si ellle a été déclarée comme ceci (setq Xl (vlax-get-or-create-object "Excel.Application")) il n'y a pas de raison que ça ne fonctionne pas Pour savoir si Excel est lancé (vlax-get-object "Excel.Application") ps : le (gc) est utile quand on a fermé Excel afin d'éviter de le retouver dans le gestionnaire des tâches. @+ [Edité le 8/4/2006 par Patrick_35]
  8. Bonsoir à vous tous Ou encore de créer un AutoCAD.lps avecr un s::startup dans lequel on pourra y intéger plusieurs autoload ce qui du coup permet de charger et de lancer le lisp uniquement quant on l'appelle @+
  9. Patrick_35

    Liste de fichier

    Salut Et avec ce sujet ? @+
  10. Il me semble que l'on a le même parcours ;) Mais ce qui est gratifiant, c'est qu'on nous consulte sur d'autres sujets qui ont le mérite de nous sortir de la routine, de faire une conception et une organisation à un autre niveau. Maintenant je fais mes petits lisp pour mes besoins perso et si d'autres en profites, ça ne me gêne pas du moment qu'ils ne s'attribuent pas la conception. @+
  11. Salut Une question bête. Pourquoi ne pas utiliser ajuster avec trajet ? @+
  12. Patrick_35

    Remplacement de blocs

    Ca me rappelle une pub, s'il n'existait pas, il faudrait l'inventer ;) Oui, c'est possible mais pas nécessaire. Lors de la sélection en mode ** Bloc(s) Multiple(s)**, il suffit de taper au clavier tout @+
  13. Patrick_35

    Lier 2 attributs

    Pour Kallain Si tu veux qu'une même valeur soit sur plusieurs attributs ou encore une incrémentation sur une liste de ces mêmes attributs, utilise ce lisp C'est pratique si par exemple tu numérotes des prises informatiques.Lors d'un ajout, rien de plus facile que d'insérer un nouveau attribut et de relancer la numérotation @+
  14. Patrick_35

    Lier 2 attributs

    Pour boris et steven Merci pour vos compliments @+
  15. Patrick_35

    Lier 2 attributs

    Pour salvanorigatore Fais moi parvenir ton dessin à patrick35@tiscali.fr afin que j'étudie la question. Je ne pourrai pas te répondre la semaine prochaine car je pars en stage @+
  16. euh oui, :red: j'ai donné la réponse sans tester @+
  17. Je vais de donner un truc qui va te simplifier la vie avec excel Tu fais un (setq a (xpl-get-value2 ...) sur la cellule A1 par exemple Tu fais un (vlax-dump-object a) et tu fais ensuite un copier coller du résultat dans la colonne A d'excel (sur une autre feulle) Tu fais ta cellule A1 dans Excel comme tu souhaites Tu recommences avec le setq et le vlax pour coller le résultat dans le colonne B Dans la colonne C, j'écris la formule =(si(A1=B1;"NON";"OUI") pour comparer les résultats et voir ce qui à modifié avant et après mes manips dans excel @+
  18. Patrick_35

    Lier 2 attributs

    Salut Je doit avouer que depuis que tu m'as demandé ce lisp, je l'utilise maintenant constament (comme quoi, les bonnes idées sont toujours bonnes à prendre) , notamment mes étiquettes de DI et franchement, je n'ai aucun problème. Ce que je te propose pour vérifier que cela vient bien du lisp, c'est d'ouvrir un dessin sans le charger, de faire tes manips voir si ça plante. Si non, de charger le lisp, de recommencer tes manips toujours pour vérifier si ça fonctionne et fait moi parvenir le verdict @+
  19. Patrick_35

    Lien Excel : Fermeture...

    Le vlax détruit le lien avec Excel Le (gc) est pour nettoyer la mémoire. J'ai Constaté que quand on ferme excel est qu'ensuite on regarde dans le gestionnaire des taches, dans l'onglet processus, Excel est toujours présent. Donc, pour pouvoir l'éliminer définitivement, je lance donc la fonction (gc) Pour le post que tu cites, c'est une base de départ et il faut avouer que c'était mes débuts avec Excel. Pour ce qui est de ton souci d'enregistrement, la je n'ai pas de reméde miracle pour l'instant. c'est directement lié avec logiciel Pour ce qui est des commandes vlax, je n'ai jamais trouvé d'aide en français :( @+
  20. Salut Tramber Eminent, éminent... on fait ce que l'on peut ;) Par ailleurs, je trouve que tu évolues sur le lisp et le vlisp à une vitesse surprenante :cool: Au lieu d'un xlp-put-numberformatlocal, tu peux faire un xlp-get-numberformatlocal pour lire le format de cellule Pour ce qui est de ton zéro, tu ne peux plus raisonner en chiffre mais en texte exemple (setq nb (itoa 61234)) (while (< (strlen nb) 6) (setq nb (strcat "0" nb)) ) Pour ce qui est de la date, tu ajoutes 2415019 à la valeur de ta cellule et l'antique routine qui suit te traduit cette valeur (extrait de mémoire ou inspiré de Julian.lsp) (defun donne_date(td / d j hh m mm ss time y) (setq time (* 86400.0 (- td (setq j (fix td))))) (setq j (- j 1721119.0)) (setq y (fix (/ (1- (* 4 j)) 146097.0))) (setq j (- (* j 4.0) 1.0 (* 146097.0 y))) (setq d (fix (/ j 4.0))) (setq j (fix (/ (+ (* 4.0 d) 3.0) 1461.0))) (setq d (- (+ (* 4.0 d) 3.0) (* 1461.0 j))) (setq d (fix (/ (+ d 4.0) 4.0))) (setq m (fix (/ (- (* 5.0 d) 3) 153.0))) (setq d (- (* 5.0 d) 3.0 (* 153.0 m))) (setq d (fix (/ (+ d 5.0) 5.0))) (setq y (+ (* 100.0 y) j)) (if (< m 10.0) (setq m (+ m 3)) (progn (setq m (- m 9)) (setq y (1+ y)) ) ) (setq hh (fix (/ time 3600.0))) (setq time (- time (* hh 3600.00))) (setq mm (fix (/ time 60.0))) (setq ss (- time (* mm 60.0))) (setq d (itoa (fix d))) (setq m (itoa (fix m))) (setq y (itoa (fix y))) (setq hh (itoa hh)) (setq mm (itoa mm)) (setq ss (itoa (fix ss))) (if (= (strlen d) 1) (setq d (strcat "0" d))) (if (= (strlen m) 1) (setq m (strcat "0" m))) (if (= (strlen hh) 1) (setq hh (strcat "0" hh))) (if (= (strlen mm) 1) (setq mm (strcat "0" mm))) (if (= (strlen ss) 1) (setq ss (strcat "0" ss))) (list (strcat d "." m "." y " " hh ":" mm ":" ss) (strcat hh ":" mm ":" ss)) ) Un (car (donne_date valeur)) --> Date+heure Un (cadr (donne_date valeur)) --> heure Pour ce qui est du lien hypertext, tu veux le configurer comment ? @+
  21. Salut Tramber Ce sujet ne répond pas à ta question ? @+
  22. Patrick_35

    Lien Excel : Fermeture...

    Salut Tu peux être plus précis ? Ton vlax est pour détruire le lien avec excel, pas pour le fermer Voici des exemples et il y a d'autre méthodes pour les faire, mais ne connaissant pas la manière dont tu as fait ton lien Pour sauver un fichier Excel (vlax-invoke-method (vlax-get-property Xl "ActiveWorkbook") "Save") Pour fermer le classeur (vlax-invoke-method (vlax-get-property Xl "ActiveWorkbook") 'Close) Pour quitter Excel (vlax-invoke-method Xl 'QUIT) Et pour détruire le lien et vider la mémoire (vlax-release-object Xl)(gc) @+
  23. Patrick_35

    cripté un programme lisp

    Salut Il y a bien la commande protect sous dos qui permet de crypter les programmes lisp et aussi la commande decrypt que l'on peut trouver sur la toile (toujours sous dos) mais ce n'est pas top comme protection. Comme le dit Bonus, il est mieux d'utiliser le compilateur vlx et de conserver dans un coin ses sources @+
  24. Patrick_35

    Fichier utilisé en Xref

    Salut A moins d'avoir une GED, autrement, pas à ma connaissance @+
  25. Patrick_35

    insertion en masse

    Non, j'ai une routine qui importe des blocs qui ne sont pas dans le dessin via le vla-insert En reprenant une partie de ton code et qui fonctionne ((lambda ( / prefix dwg) (setq prefix (strcat (vl-filename-directory (getfiled "Sélectionner un fichier DWG TEMOIN" "" "dwg" 16)) "\\")) (foreach dwg (vl-directory-files prefix "*.dwg" 1) (vla-InsertBlock (vla-get-modelspace (vla-get-activedocument (vlax-get-acad-object))) (vlax-3d-point '(0.0 0.0 0.0)) (strcat prefix dwg) 1 1 1 0) ) )) Sinon, je ne vois pas @+
×
×
  • 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é