; Funciones VL que conectan con Excel, obtienen datos de celdas y cierran Excel ; https://www.devcadlisp.com/ ; https://mariotorres.pe/ ; Este es un lisp en formato original, se puede ver el código fuente, la intención, es de que el código fuente ; pueda ser modificado y adaptado a la necesidad de cada usuario, se prohibe la distribución libre del mismo, dado a que le ; pertenece al autor. ;------------------------------------------------------------------------------------------------------------------------------- ; CODIGO FUENTE DE LA RUTINA LISP (SNIPPET). ;______________________________________________________ (vl-load-com) (defun conectar-excel() (setq RutaArch "D:\\Temp\\prueba.xlsx" apl-excel (vlax-get-or-create-object "excel.application") col-libros (vlax-get-property apl-excel "workbooks") libro (vlax-invoke-method col-libros "open" RutaArch) col-hojas (vlax-get-property libro "sheets") hoja-1 (vlax-get-property col-hojas "item" 1) col-celdas (vlax-get-property hoja-1 "cells") ) ;(vla-put-visible apl-excel :vlax-true) (vla-put-visible apl-excel :vlax-false);Esconder excel ) (defun c:nh() (conectar-excel) (setq TextoNombreHoja (vlax-get-property hoja-1 "name")) (alert (strcat "Se leerá la hoja " TextoNombreHoja)) (ObtenerValores 1) ;Empezar de la fila 1 (desconectar-excel) (princ) ) (defun ObtenerValores (FilaDeInicio) (while (/= (setq varx (vlax-variant-value (vlax-variant-change-type (vlax-get-property col-celdas "item" FilaDeInicio 1) vlax-vbstring))) "") (setq vary (vlax-variant-value (vlax-variant-change-type (vlax-get-property col-celdas "item" FilaDeInicio 2) vlax-vbstring))) (princ (strcat "(Fila: " (itoa filaDeInicio) ") Valor columna 1= " varx " | Valor columna 2= " vary "\n")) (setq filaDeInicio (+ filaDeInicio 1)) ) ) (defun desconectar-excel() (vlax-release-object col-celdas) (vlax-release-object hoja-1) (vlax-release-object col-hojas) (vlax-release-object col-libros) (vlax-invoke-method apl-excel 'QUIT) (vlax-release-object apl-excel) (gc) ) (setvar "modemacro" "https://www.devcadlisp.com/") (alert "https://www.devcadlisp.com/\nhttps://mariotorres.pe/") (princ "\nhttps://www.devcadlisp.com/") (princ)