elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Cuando copio un Recordset no lo copia entero
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Cuando copio un Recordset no lo copia entero  (Leído 1,894 veces)
The_Saint

Desconectado Desconectado

Mensajes: 74


Ezo


Ver Perfil
Cuando copio un Recordset no lo copia entero
« en: 31 Julio 2013, 09:34 am »

Buenas:

He creado un código para lanzar consultas en MySql y tengo el siguiente problema.
A la hora de volcar el recordset me vuelca nada mas que 7 columnas cuando hay 10.

Si utilizo la propiedad:
Código:
Debug.Print recsql.Fields.Count

Me devuelve 10
Y si utiliz:
Código:
Range("A1").CopyFromRecordset

Me vuelca en la hoja de excel 7 columnas, ya no se que mas hacer...

Saludos.


En línea

<< Si piensas que eres demasiado pequeño para tener impacto.
Prueba a irte a la cama con un mosquito>>
The_Saint

Desconectado Desconectado

Mensajes: 74


Ezo


Ver Perfil
Re: Cuando copio un Recordset no lo copia entero
« Respuesta #1 en: 31 Julio 2013, 12:08 pm »

Bueno visto lo visto en el soporte de microsoft voy a buscar otro metodo para volcar la consulta....
 :rolleyes:


En línea

<< Si piensas que eres demasiado pequeño para tener impacto.
Prueba a irte a la cama con un mosquito>>
The_Saint

Desconectado Desconectado

Mensajes: 74


Ezo


Ver Perfil
Re: Cuando copio un Recordset no lo copia entero
« Respuesta #2 en: 31 Julio 2013, 13:00 pm »

pfff los de Mocosoft son unos maquinas ... (vaya basura de método,falla y ni siquiera da un error...)
es verdad que falla el método lo certifico, al final lo he solucionado con otro código, lo pego por si alguien lo quiere para algún día:

Código:
Sub MySql_VolcadoExcel()

Dim conexion As New ADODB.Connection
Dim miservidor As String
Dim bd As String
Dim user As String
Dim i, f, c As Long
Dim rs As ADODB.Recordset

 

miservidor = "XXXXXXXXX"
bd = "XXXXXXXXX"
user = "XXXXXXXXXXx"
Set conexion = New ADODB.Connection
'ABRE LA CONEXION
conexion.Open "DRIVER={MySQL ODBC 5.2a Driver};SERVER=" & miservidor & ";DATABASE=" & bd & ";UID=" & user & ";password=XXXXX;OPTION=16427"

Set recsql = New ADODB.Recordset
'EJECUTA LA CONSULTA: evidentemente consulta1 es una variable que ya contiene la consulta en si...
recsql.Open consulta1, conexion

ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = "Consulta " & NombreConsulta

c = 0
f = 0

' recorre las columnas, añade el nombre del campo al encabezado
For i = 0 To recsql.Fields.Count - 1
Range(Chr(i + 65) & f + 1).Value = recsql.Fields(i).Name
Next

f = f + 1

' recorre todo el RECORDSET hasta el final
Do While Not recsql.EOF

' recorre los campos en el registro actual del RECORDSET para recuperar el dato
For i = 0 To recsql.Fields.Count - 1
' añade el valor a la celda
Range(Chr(c + 65) & (f + 1)).Value = recsql.Fields(c)
c = c + 1
Next

' RESETEA EL INDICE DE LAS COLUMNAS
c = 0
' SUMA UNA FILA
f = f + 1
' SIGUIENTE REGISTRO DEL RECORDSET
recsql.MoveNext
Loop

' Cierra y descarga los objetos
On Error Resume Next
recsql.Close
conexion.Close
Set conexion = Nothing
Set recsql = Nothing

End Sub
En línea

<< Si piensas que eres demasiado pequeño para tener impacto.
Prueba a irte a la cama con un mosquito>>
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Que no lo copio
Software
malferI 0 1,323 Último mensaje 16 Mayo 2004, 05:49 am
por malferI
Puedo hacer una copia de una copia de play2?
Juegos y Consolas
MARU74 0 2,086 Último mensaje 24 Abril 2006, 20:15 pm
por MARU74
recordset en php
PHP
almita 2 7,828 Último mensaje 16 Enero 2007, 18:33 pm
por Hans el Topo
¿como detectar cuando alguien copia algo al portapapeles? java
Java
p4nd4criss 0 2,367 Último mensaje 4 Junio 2012, 01:52 am
por p4nd4criss
Ayuda no me copia el string entero
Programación C/C++
PabloPbl 2 2,222 Último mensaje 11 Diciembre 2015, 04:39 am
por PabloPbl
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines