Aller au contenu

Messages recommandés

Posté(e)

Bonjour,

 

je suis à la recherche d'une pitite routine permettant de manipuler les fichiers excels.

 

J'ai essayé de trouver mon bonheur en en cherchant dans IXL mais bon le code est trop pointu pour moi (Patrick_35 tu n'es pas humain...). Je ne comprend même pas les étapes :(

 

Personne n'aurait un truc simple qui prend comme argument le chemin du fichier, la feuille, la cellule et qui retourne la valeur ?

 

De même quelque chose qui permet d'écrire dans ce même tableau ?

 

Merci d'avance !

 

Posté(e)

Salut

 

Je vais t'indiquer les principales fonctions la base de IXL bien que (gile) à mis à disposition une serie d'outils traduit du celebre TONY (je ne sais plus où)

 

Lancer Excel

(setq xl (vlax-get-or-create-object "Excel.Application"))

Rendre Excel visible

(vlax-put xl 'visible :vlax-true)

Acceder à l'espace de travail

(setq wks (vlax-get xl 'Workbooks))

Ouvrir un fichier

(setq xls (vlax-invoke wks 'open "C:/Données Utilisateur/Patrick/Save/Câbles Maison.xls"))

Acceder au classeurs

(setq cla (vlax-get xls 'sheets))

Acceder à la feuil1

(setq feu (vlax-get-property cla 'item "Feuil1"))

Acceder à la cellule A1

(setq cel (vlax-get-property feu 'range "A1"))

Lire la cellule

(vlax-get cel 'value2)

Ecrire la cellule

(vlax-put cel 'value2 "Ma valeur")

Sauver

(vlax-invoke-method xls 'save)

Fermer le classeur

(vlax-invoke-method xls 'close :vlax-false)

Nettoyer la mémoire

(foreach sel (list xl wks xls cla cel)
 (vlax-release-object sel)
)
(setq xl nil wks nil xls nil clas nil cel nil)
(gc)(gc)

(Patrick_35 tu n'es pas humain...)

J'ai pourtant rangé mes oreilles pointues :o

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Posté(e)

Salut,

 

Le LISP GetExcel (routines pour lire ou écrire un fichier Excel) de Terry Miller traduit en français est ici.

 

Sinon tu as aussi les fonctions XLRead et XlWrite de Lisp_Extension.

 

Dans tous les cas, c'est l'ouverture d'un processus Excel qui est dispendieuse en temps (plus que la lecture ou l'écriture des données) c'est pourquoi on préfère souvent récupérer toutes les données sous forme de listes pour les traiter et les réinjecter ensuite.

 

Mais plus ça va plus je me pose des questions sur la pertinence de faire communiquer AutoCAD et Excel (de plus il semble y avoir des problèmes avec les version 64 bits).

La lecture et l'écriture en LISP de fichiers .csv est tellement plus simple, plus rapide et plus fiable.

Ou alors l'utilisation d'une vraie base de donnée embarquée (SQLite) avec SQLiteLsp (enregistrement nécessaire).

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

  • 3 ans après...
  • 3 ans après...
Posté(e)

Je déterre ce vieux sujet pour une petite question...

 

Lors de l'installation de LispExtension, j'ai ce message :

post-6426-0-86115600-1476442231_thumb.jpg

 

Si quelqu'un a une idée...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Salut (gile), et merci de me répondre...

 

C'est nickel...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

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é