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

Error en tipo de datos (Macro)

Estas en el tema de Error en tipo de datos (Macro) en el foro de Ofimática en Foros del Web. Hola a todos, Espero que esten bien aunque no los conosca , bueno el motivo por el cual esta ves les escribo es para pedirles ...
  #1 (permalink)  
Antiguo 05/02/2008, 14:54
Avatar de MOlgaI  
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 11 meses
Puntos: 0
Error en tipo de datos (Macro)

Hola a todos,

Espero que esten bien aunque no los conosca , bueno el motivo por el cual esta ves les escribo es para pedirles su ayuda, el siguiente codigo VB debe realizar la acción de cargar toda la información que se encuentra almacenada en otro archvo de excel, solo que me genera un error, y no lo encientro dado que tengo muy poca relación con este código, el error que me genera es el siguiente,

No se ha definido el tipo definido por el usuario

Segun yo al codigo no debe afectarle la información que esta recoja ya que solo va a tomar datos de un archivo y pasarlos a sus celdas.

U otra opción seria que alguien me pueda dar otra solución ya que el archivo del cual quiero copiar la información esta cambiendo constantemente y del cual no puedo guardar ninguna información ya que no es nada estatico. Este es un archivo que esta conectado a un programa PLC y genera datos pero despues decerrar la cesión no me guarda datos.

Espero me puedan ayudar y me haya explicado.

Sub Conectar_Excel_ADO()
'importar datos de un libro Excel sin abrirlo.

'dimensiones
Dim datConnection As ADODB.Connection
Dim recSet As ADODB.Recordset
Dim recCampo As ADODB.Field
Dim strDB, strSQL As Integer
Dim i As Long

'ruta al archivo Excel (la base de datos)
strDB = ThisWorkbook.Path & "\" & _
"MiArchivoExcel.xls"
strDB = "MiArchivoExcel.xls" 'si otra carpeta

'conectar
Set datConnection = New ADODB.Connection
Set recSet = New ADODB.Recordset
datConnection.Open "DRIVER=Microsoft Excel _
Driver (*.xls);" & "DBQ=" & strDB

'consulta SQL
'strSQL = "SELECT * FROM [NuestroRango]"
strSQL = "SELECT * FROM [Hoja1$A1:Q1000]"

'abrimos el recordset
recSet.Open strSQL, datConnection, adOpenStatic

'copiar datos
ActiveSheet.Cells.ClearContents
ActiveSheet.Cells(2, 1).CopyFromRecordset recSet

'copiar rotulos (campos)
i = 1
For Each recCampo In recSet.Fields
ActiveSheet.Cells(1, i) = _
recCampo.Name: i = i + 1
Next recCampo

'desconectar (¡importante!)
recSet.Close
datConnection.Close

'cerrar los objetos
Set recSet = Nothing
Set datConnection = Nothing
End Sub
  #2 (permalink)  
Antiguo 06/02/2008, 12:01
Avatar de abrahamvj  
Fecha de Ingreso: julio-2006
Ubicación: Lima, Peru
Mensajes: 708
Antigüedad: 18 años, 4 meses
Puntos: 18
Re: Error en tipo de datos (Macro)

En el editor de VBA, activaste la referencia a ADO?

Abraham
  #3 (permalink)  
Antiguo 12/02/2008, 14:48
Avatar de MOlgaI  
Fecha de Ingreso: diciembre-2007
Mensajes: 9
Antigüedad: 16 años, 11 meses
Puntos: 0
Re: Error en tipo de datos (Macro)

No la verdad no se como, podrias decirme po favor?
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:45.