Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Servers
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-03-2012
Chaja Chaja is offline
No confirmado
 
Registrado: ago 2004
Ubicación: Mar del Plata
Posts: 238
Poder: 0
Chaja Va por buen camino
Importacion desde Excel con ADO no importa algunos datos

Hola... escribo por que estaba buscadno un tema con referencia a la importacion de datos desde excel, y me encuentro con un tema. Uso la forma de hacerlos con los ADO comp. uso como se ha explicado en el foro y todo eso y se hace bien. todo bien, hasta que me sucede lo siguiente. No se por que algunos valors de la tabla de excel me los trae vacios, concretamenete los que son valores enteros, como controlo eso? la hoja de excel es:
codigo detalle precio
5588/1 Pelota Futbol CLUB 42.00
5589/1 Pelota Futbol Master 42.00
5589/2
Pelota Master Color 42.00
11 Pelota Fox Nº 4 52.00
17 Arco Futbol 1.83 x 1.22 x.60 149.00
17/A Arco Futbol 2.40 x 1.52 x 0.90 239.00
17/B Arco Futbol 3.02 x 2.07 x 1.18 349.00
18 Pelota Futsala Pro cosida 54.00
20
Silbato fox 40 striker 9.90
21 Collarines x 12 Unidades 18.90
22 Silbato fox 40 dolfin 18.90
23 Silbato Fox Micro C/C 24.90
24 Silbato Fox 40 classic 21.90
24D Silbato Fox 40 clasicc color surt x12 262.00
25 Silbato Fox 40 Pearl 11.90
26 Silbato Fox 40 con cronometro 139.00
27 Silbato fox Shark c/collarin 29.90
28 Collarin Fox x12 69.00

por ejemplo los codigo 11 17 24 25 26 27 28 no me levanta los datos , si el resto pero esos valores no. Para que lo haga debo ir al excel y editar uno por uno para que sea un texto. si son poco no pasa nada, pero como debo importar mas de 1000 lineas se complica.
Alguna sugerencia?

Gracias

Luis Roldan
Mar del Plata
Argentina
Responder Con Cita
  #2  
Antiguo 28-04-2012
Avatar de CHECHE81
CHECHE81 CHECHE81 is offline
Miembro
 
Registrado: may 2007
Ubicación: Huauchinango, Puebla
Posts: 64
Poder: 17
CHECHE81 Va por buen camino
Smile

Saludos Chaja
Si nos muestras tu código podriamos ver como lo haces o talvez sea el tipo de dato que tienes en tu bd por ejemplo yo
para importar un excel a mysql utilizo algo como esto:

Código Delphi [-]
try
  AdoDataSet1.First;
  While not AdoDataSet1.EoF do
  begin

      cds1.Append;
     if not AdoDataSet1.FieldByName('campostring1').IsNull then
      cds1.FieldByName('campostring1').Value:= AdoDataSet1.FieldByName('campostring1').Value ;

      if not AdoDataSet1.FieldByName('campostring2').IsNull then
      cds1.FieldByName('campostring1').Value := AdoDataSet1.FieldByName('campostring2').Value ;
…

      if not AdoDataSet1.FieldByName('campoentero1').IsNull then
        cds1.FieldByName('campoentero1').Value := AdoDataSet1.FieldByName('campoentero1').Value ;
      …
      if not AdoDataSet1.FieldByName('campoentero2').IsNull then
        cds1.FieldByName('campoentero2').Value := AdoDataSet1.FieldByName('campoentero2').Value ;
      …


      cds1.post;

      AdoDataSet1.Next;

  end;

  Cerrar; //función para cerrar y refrescar el cds1 para mostrar los datos importados

  showmessage('Se agregaron los datos con éxito.');

  except
    ShowMessage('Verifique que los datos de su archivo de excel esten correctos, gracias.'); // Esto es si no coinciden
// los campos que estoy guardando en mi tabla  y los tengo en mi código de importación con los que tiene el excel, con 
//uno que no coincida aqui truena ok.
  end;

Solo que tengo un detalle se tarda demaciado, se me pasma la pantalla no he probado con los componentes de excel y no
se si es más rapido por esa vía, pero por aqui se me tarda un rato con un excel de 72 filas y 13 columnas, estuve pensando
si se podria hacer un insert con un select:
Código SQL [-]
INSERT INTO tabla_A(CAMPO1, CAMPO2) select CAMPO1,CAMPO2 from tablaB
para que sea más rapida la importación y dejarle la chamba a la bd pero el detalle es que mi AdoDataSet1 esta conectado al
excel y los datos no estan en la bd sino en el el excel... si alguien ha hecho algo parecido y tiene algún dato extra se lo
agradezco de ante mano y estaria super jojojo¡¡¡¡¡

Grax por su tiempo.
__________________
Cuidemos el medio ambiente....jojo
Responder Con Cita
  #3  
Antiguo 12-05-2012
Avatar de juanlaplata
juanlaplata juanlaplata is offline
Miembro
 
Registrado: ene 2007
Ubicación: La Plata, Bs. As. (Argentina)
Posts: 212
Poder: 18
juanlaplata Va por buen camino
Hola, saludos ...
asi es como importo datos de Excel.
Recorre todas las celdas del Excel e importa cada una de ellas.
Obviamente, tendrias q analizar de que manera se adapta a tu necesidad.

Código Delphi [-]
              FileName := OpenDialog1.FileName;
              Excel := CreateOleObject('Excel.Application');
              Excel.Workbooks.Open(FileName);

              Sheet := Excel.Workbooks[ExtractFileName(FileName)].WorkSheets[1];
              Sheet.Cells.SpecialCells(xlCellTypeLastCell, EmptyParam).Activate;

              CantRow := Excel.ActiveCell.Row;
              CantCol := Excel.ActiveCell.Column;

              RangoMatriz := Excel.Range['A1', Excel.Cells.Item[CantRow,CantCol]].Value;

              for i:=1 to CantRow do
                 begin
                      for j:=1 to CantCol do
                       begin

                            Base.buscarTelefonos.Append;
                            Base.buscarTelefonosImei.AsString := trim(RangoMatriz[i,j]);
                            Base.buscarTelefonos.Post;

                       end; // for j
                 end;//for i
              Excel.quit;
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
exportar/importa a excel martonbarbosa Varios 1 22-07-2014 22:09:55
importacion de Datos Excel 2007 oscarac Varios 4 19-12-2011 06:04:50
Importacion desde Excel oscarac Varios 1 01-03-2011 17:23:12
Importación desde fichero XML???? burasu .NET 4 16-10-2005 12:04:07
Importación de Contactos desde outlook hot1974 Servers 7 09-06-2005 00:53:35


La franja horaria es GMT +2. Ahora son las 00:58:55.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi