Foros del Web » Soporte técnico » Ofimática »

[SOLUCIONADO] Conectar Excel a MySql

Estas en el tema de Conectar Excel a MySql en el foro de Ofimática en Foros del Web. Buen día compañeros; Estoy extrallendo datos de una base de datos MySql a excel pero a la hora de conectar me marca error, entonces me ...
  #1 (permalink)  
Antiguo 03/05/2013, 09:48
 
Fecha de Ingreso: abril-2013
Ubicación: Veracruz
Mensajes: 9
Antigüedad: 11 años
Puntos: 0
Conectar Excel a MySql

Buen día compañeros;

Estoy extrallendo datos de una base de datos MySql a excel pero a la hora de conectar me marca error, entonces me imagine que habia que poner el odbc de MySql, entonces al darlo de alta me marca error, aunque si es necesario tener pago mims paso que segui primero ejecuto mi codigo es este:

Código vb:
Ver original
  1. Public Sub carga_ordenes_MBVE()
  2.     Dim cn1 As Object
  3.     Dim rst1 As Object
  4.     Dim vtSql1$
  5.     Dim Hoja$
  6.     Dim x
  7.     Dim xfecha, xrenglon
  8.     Select Case Sheets("EDO RES").Range("E7").Value
  9.         Case 1
  10.             Hoja = "ENE"
  11.         Case 2
  12.             Hoja = "FEB"
  13.         Case 3
  14.             Hoja = "MAR"
  15.         Case 4
  16.             Hoja = "ABR"
  17.         Case 5
  18.             Hoja = "MAY"
  19.         Case 6
  20.             Hoja = "JUN"
  21.         Case 7
  22.             Hoja = "JUL"
  23.         Case 8
  24.             Hoja = "AGO"
  25.         Case 9
  26.             Hoja = "SEP"
  27.         Case 10
  28.             Hoja = "OCT"
  29.         Case 11
  30.             Hoja = "NOV"
  31.         Case 12
  32.             Hoja = "DIC"
  33.     End Select
  34.    
  35.     Set cn1 = CreateObject("ADODB.Connection")
  36.     Set rst1 = CreateObject("ADODB.Recordset")
  37.    
  38.     cn1.ConnectionString = "dsn=gbmacropro;uid=gbmacropro;pwd=gb866982;"
  39.        
  40.     Sheets(Hoja).Range("J34").Value = 0
  41.     Sheets(Hoja).Range("J35").Value = 0
  42.     Sheets(Hoja).Range("J36").Value = 0
  43.     Sheets(Hoja).Range("K34").Value = 0
  44.     Sheets(Hoja).Range("K35").Value = 0
  45.     Sheets(Hoja).Range("K36").Value = 0
  46.    
  47.     Dim ceros
  48.     Dim xmes, xlong
  49.     xmes = Sheets("EDO RES").Range("E7").Value
  50.     xlong = Len(CStr(Sheets("EDO RES").Range("E7").Value))
  51.     ceros = ""
  52.     If Len(CStr(Sheets("EDO RES").Range("E7").Value)) = 1 Then
  53.         ceros = Replicate((2 - xlong), "0")
  54.     End If
  55.     xfecha = ceros & Sheets("EDO RES").Range("E7").Value
  56.  
  57.           '  "PROCESO PARA ORDENES ABIERTA"
  58.    vtSql1 = "SELECT "
  59.     vtSql1 = vtSql1 & "COUNT(gbtdsord.tord_fol) AS 'ORD_ABIERTAS' "
  60.     vtSql1 = vtSql1 & "FROM `gbmacropro`.`gbtdsord` INNER JOIN `gbmacropro`.`gbvencli` "
  61.     vtSql1 = vtSql1 & "ON gbtdsord.tord_cli = gbvencli.cli_llave "
  62.     vtSql1 = vtSql1 & "WHERE gbtdsord.tord_stat = 'A' "
  63.     vtSql1 = vtSql1 & "AND gbtdsord.tord_ope = '1' "
  64.     vtSql1 = vtSql1 & "AND gbtdsord.tord_almacen = '0' " '/*CLAVE PARA MB VERACRUZ*/
  65.    '/*ESTE tord_tipo ES PARA TALLER*/ "
  66.    vtSql1 = vtSql1 & "AND gbtdsord.tord_tipo in('1', '3', '5', '10', '11', '12', '13', '14', '15', '16', '18', '20', '21', '22') "
  67.     '/*ESTE tord_tipo ES PARA GARANTIAS*/ "
  68.    vtSql1 = vtSql1 & "AND gbtdsord.tord_tipo in('2','4','7','9','17','19') "
  69.     vtSql1 = vtSql1 & "AND Month(gbtdsord.tord_fch_ent) = '" & xfecha & "' "
  70.     vtSql1 = vtSql1 & "AND Year(gbtdsord.tord_fch_ent) = '" & Sheets("EDO RES").Range("E6").Value & "' "
  71.            
  72.          cn1.Open
  73.               rst1.Open vtSql1, cn1, 1, 3
  74.                    Sheets(Hoja).Range("J34").Value = rst1.Fields(0) 'ORDENES ABIERTAS TALLER
  75.         cn1.Close
  76.  
  77. End Sub

al depurarlo me marca el error siguiente:



Este error es de conexion entonces descarge el odbc de Mysql y lo configure y quedo correcto esta es la imagen:



Quedo bien pero el problema es al agregar la conexion al Excel me da este error:



Haber si me pueden apoyar en este detallito jaja, Saludos!!
  #2 (permalink)  
Antiguo 08/05/2013, 15:39
 
Fecha de Ingreso: abril-2013
Ubicación: Veracruz
Mensajes: 9
Antigüedad: 11 años
Puntos: 0
Respuesta: Conectar Excel a MySql

Buen día Compañeros;

Al parecer nadie supo la solucion, bueno pongo la solucion que implemente.
Mi error se generaba por que tengo una Maquina de 64bits, aunque descargue el odbc para 64 bits para que no marcara este error. Por lo que entonces instale el de 64bit,el detalle fue que este odbc de 64bit se trunca, entonces necesitaría un office igual de 64 bits para evitar este error; pero yo tengo instalado es de 32 bit, tomando en cuenta que tambien el mysql es de 64bits, pues uno instala el odbc que cree correcto, pero no eso es loq ue ocasiona el problema

Solucion a esto:

Se descarga ODBC para Windows 32bits este es el elance.
[URL="http://dev.mysql.com/downloads/connector/odbc/"]http://dev.mysql.com/downloads/connector/odbc/[/URL]
ya instalado se da de alta de la siguiente forma:

1. ir a panel de control y Seleccionar la Herramientas Administrativas:



En esta ventana elegimos crear un ODBC, y verificamos que se haya instalado el MYSQL Driver.

Bueno ahora si nos vamos al Excel como esta en la imagen:



Como vemos en esta imagen elegimos la opcion sombreada y nos muestra la siguiente ventana:



Igual elegimos la sombreada otravez que es otro y avanzados y nos sale la siguiente ventana:



Elegimos las ODBC Driver:



Muy bien en esta Imagen es un una serie de ventanas explicamos la primera, que es Propiedades de vínculo de datos. y elegimos la opcion de Usar la cadena de conexión, le damos generar y nos sale la ventana de Seleccionar el orignen de datos:

En esta ventana presionamos el boton de nuevo y sale otra ventana en el cual debos decirle que es para origen de datos de usuario o sistemas como tenemos en la tercera ventana la elegimos por usuario y sale ñla ventana de crear nuevo orgine de datos y magia aparece el driver y finalmente se configura segun nuestro servidor, o.k.

Uffs un relajo redactar esto me podre dar un punto yo jajaja Saludos!!
  #3 (permalink)  
Antiguo 17/05/2013, 11:36
 
Fecha de Ingreso: abril-2013
Ubicación: Veracruz
Mensajes: 9
Antigüedad: 11 años
Puntos: 0
Respuesta: Conectar Excel a MySql

Excelente Resuelto Gracias jajaja!!!

Etiquetas: excel
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 12:25.