Manipulando Excel con Ruby

Iniciado por Alejandro_99, Agosto 04, 2013, 11:38:38 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Agosto 04, 2013, 11:38:38 PM Ultima modificación: Agosto 04, 2013, 11:41:11 PM por Alejandro9999

Esta vez estoy incursionando en la programación con el lenguaje de programación Ruby, al igual que Python se trata de un lenguaje de script (interpretado pero sumamente potente), según el creador de este lenguaje, Ruby tiene la característica de hacer divertida la programación para el programador entre otras cosas más...

En este post quiero mostrar como poder acceder a una instancia de Excel y poder manipularla. Para empezar tendremos que descargar la última versión de Ruby (si no me equivoco es la 1.9.2).

Una vez teniendo Ruby instalado,  abrimos la consola (ya saben que soy usuario de Windows, asi que no me odien por ello, jajaja) y escribimos lo siguiente:

Código: ruby
Irb [enter]


Con eso llamamos al interprete, con lo cual nos aparecerá algo mo esto:

Código: ruby
Irb(main):001:0>


Ahora a crear una instancia de Excel para ello escribimos:

Código: ruby
require 'WIN32OLE' [enter]
app = WIN32OLE::new('excel.application') [enter]
app.visible = true [enter]
app.workbooks.add [enter]
app.activeworkbook.activesheet.range('a1:a10').value = "Hola desde Ruby" * 2 [enter]
app.displayalerts = false [enter]
app.quit [enter]


NOTA: Sean cuidadosos, ya que en Ruby se utilizan comillas simples (apostrofo) y comillas dobles al igual que en Python.

Y listo, eso es todo! Hemos visto como crear una instancia, hacer visible, crear un libro, asignar valores a las celdas y eliminar todo. Se trata de algo pequeño pero que nos permite ver los alcances de Ruby. El único punto malo es que en Ruby, desconozco si hay sentencia "with" como la de VBA, será cuestión de investigar.

Se puede utilizar Ruby para acceder al modelo de objetos de Excel y además combinar todo el poder que nos brinda este lenguaje de programación con sus objetos, mas adelante estaré publicando al respecto.

Saludos!

Contenido obtenido de: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta