Importar a VC datos de excel
- Optiondreamer
- Mensajes: 345
- Registrado: 28 Mar 2006 08:07
- Ubicación: 40.705571, -74.013432
Importar a VC datos de excel
Holass
He leido por ahí que se puede importar a Visual Chart datos ajenos, por ejemplo los contenidos en una hoja de cálculo de Excel.
Todavía no me he puesto a investigar a fondo, y quisiera si alguno/a lo ha probado y funciona, comentase algo acerca del tema.
El método no debe ser muy complicado, simplemente abrir la hoja de calculo mediante código VBA, pasar a variables los datos contenidos en la hoja de cálculo(recordset) y una vez en VC, trabajar con las funciones propias de este programa.
¿Alguno/a sabe de alguna página donde se aborde el tema de VBA para VC en profundidad?
Saludos.
He leido por ahí que se puede importar a Visual Chart datos ajenos, por ejemplo los contenidos en una hoja de cálculo de Excel.
Todavía no me he puesto a investigar a fondo, y quisiera si alguno/a lo ha probado y funciona, comentase algo acerca del tema.
El método no debe ser muy complicado, simplemente abrir la hoja de calculo mediante código VBA, pasar a variables los datos contenidos en la hoja de cálculo(recordset) y una vez en VC, trabajar con las funciones propias de este programa.
¿Alguno/a sabe de alguna página donde se aborde el tema de VBA para VC en profundidad?
Saludos.
Hola Optiondreamer,
A esto no le llamaría importar datos, sino más bien acceder a datos externos, porque la información seguirá residiendo en Excel, ¿no?
Yo lo he hecho con una base de datos de Access, no con Excel, pero supongo que viene a ser lo mismo.
Se hace igual que con cualquier programa VB o VBA. Se declaran las variables, se incluye la referencia al motor de base de datos y se accede a través del recordset.
Si quieres que te ponga código de ejemplo, dímelo.
Un saludo
A esto no le llamaría importar datos, sino más bien acceder a datos externos, porque la información seguirá residiendo en Excel, ¿no?
Yo lo he hecho con una base de datos de Access, no con Excel, pero supongo que viene a ser lo mismo.
Se hace igual que con cualquier programa VB o VBA. Se declaran las variables, se incluye la referencia al motor de base de datos y se accede a través del recordset.
Si quieres que te ponga código de ejemplo, dímelo.
Un saludo

Si no te equivocas de vez en cuando, quiere decir que no estás aprovechando todas tus oportunidades. Woody Allen.
- Optiondreamer
- Mensajes: 345
- Registrado: 28 Mar 2006 08:07
- Ubicación: 40.705571, -74.013432
Hola bunder,
Gracias por tu respuesta. Tienes razón en la matización importar/acceso. Me refería a poder leer desde VC los datos que hay en Excel.
Respecto a Access/Excel, tanto monta, monta tanto . . . Me defiendo bien en ambos, y la verdad, para empezar, no vendría mal una ayudita con un poco de código a modo de ejemplo.
Sin querer abusar demasiado, ¿habéis probado a acceder a las tablas de VC? Me parece o que están codificadas, o que tienen algún formato que no es puramente VBA.
En fín, gracias de nuevo y saludos.
Gracias por tu respuesta. Tienes razón en la matización importar/acceso. Me refería a poder leer desde VC los datos que hay en Excel.
Respecto a Access/Excel, tanto monta, monta tanto . . . Me defiendo bien en ambos, y la verdad, para empezar, no vendría mal una ayudita con un poco de código a modo de ejemplo.
Sin querer abusar demasiado, ¿habéis probado a acceder a las tablas de VC? Me parece o que están codificadas, o que tienen algún formato que no es puramente VBA.
En fín, gracias de nuevo y saludos.
Los datos de las tablas los puedes transmitir por DDE a Excel y a Access.
Un saludo
X-Trader
Un saludo
X-Trader
"Los sistemas de trading pueden funcionar en ciertas condiciones de mercado todo el tiempo, en todas las condiciones de mercado en algún momento del tiempo, pero nunca en todas las condiciones de mercado todo el tiempo."
- Optiondreamer
- Mensajes: 345
- Registrado: 28 Mar 2006 08:07
- Ubicación: 40.705571, -74.013432
Optiondreamer,
Para acceder al contenido de una tabla de Access desde un sistema de VC hay que hacer lo siguiente:
Declarar las variables
Abrir el espacio de trabajo del motor y la base de datos
Abrir la tabla en un recordset (con índice si se quiere)
Y listos para acceder a los campos
Antes de poder compilar la primera vez, hay que indicar la referencia al motor de base de datos.
En Tools / References:

En mi configuración, cada vez que abro un gráfico, y antes de insertar un sistema o estudio que use una base de datos, tengo que volver a recompilarlo. No sé si a ti te pasará lo mismo. No he investigado el porqué (tampoco me incordia mucho).
Lo de acceder a las tablas de VC no lo he intentado.
Saludos
Para acceder al contenido de una tabla de Access desde un sistema de VC hay que hacer lo siguiente:
Declarar las variables
Código: Seleccionar todo
Dim WkSp As Workspace
Dim dbTnd As Database
Dim rstDatos As Recordset
Código: Seleccionar todo
Set WkSp = DBEngine.CreateWorkspace("MainWS", "admin", "")
Set dbTnd = WkSp.OpenDatabase("MiBaseDeDatos.mdb")
Código: Seleccionar todo
Set rstDatos = dbTnd.OpenRecordset("MiTabla")
rstDatos.index = "PrimaryKey"
Código: Seleccionar todo
rr = rstDatos("MiCampo")
En Tools / References:

En mi configuración, cada vez que abro un gráfico, y antes de insertar un sistema o estudio que use una base de datos, tengo que volver a recompilarlo. No sé si a ti te pasará lo mismo. No he investigado el porqué (tampoco me incordia mucho).
Lo de acceder a las tablas de VC no lo he intentado.
Saludos

- Adjuntos
-
- refer.jpg (36.78 KiB) Visto 1082 veces
Si no te equivocas de vez en cuando, quiere decir que no estás aprovechando todas tus oportunidades. Woody Allen.
Si te ha gustado este hilo del Foro, ¡compártelo en redes!