Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-01-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
conexion a excel desde delphi!!!

hola espero y me puedan ayudar tengo una tabla en la bd llamada clientes y kiero ke desde el programa hecho en delphi pueda jalar informacion desde excel podrian ayudarme?
Responder Con Cita
  #2  
Antiguo 29-01-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
No seas vago...

Busca en los foros.
Hay muchos ejemplos.

Lee la guía de estilo
Responder Con Cita
  #3  
Antiguo 29-01-2008
Avatar de poliburro
[poliburro] poliburro is offline
Miembro Premium
 
Registrado: ago 2004
Ubicación: México D.F
Posts: 3.068
Poder: 23
poliburro Va por buen camino
Para eso nada mejor que ADO,
__________________
Conoce mi blog http://www.edgartec.com
Responder Con Cita
  #4  
Antiguo 31-01-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
hola

me podrias dar un ejemplo de como importar por favor y si tengo que usar algun componente.
Responder Con Cita
  #5  
Antiguo 31-01-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Aqui hay un ejemplo.
Saludos
Responder Con Cita
  #6  
Antiguo 31-01-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Tres minutos buscando en los foros y encontré

http://delphi.about.com/od/database/l/aa090903a.htm
http://www.djpate.freeserve.co.uk/AutoExcl.htm
http://dn.codegear.com/article/10126

que el usuario Neftali propone en esta discusión.

Además dice que en el FTP del club hay un ejemplo: "Ejemplo_Conectar_ADO_Excel.zip"

Un poco de iniciativa...
Responder Con Cita
  #7  
Antiguo 31-01-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
Cita:
Empezado por duilioisola Ver Mensaje
Tres minutos buscando en los foros y encontré

http://delphi.about.com/od/database/l/aa090903a.htm
http://www.djpate.freeserve.co.uk/AutoExcl.htm
http://dn.codegear.com/article/10126

que el usuario Neftali propone en esta discusión.

Además dice que en el FTP del club hay un ejemplo: "Ejemplo_Conectar_ADO_Excel.zip"

Un poco de iniciativa...
gracias por la ayuda hice lo del ejemplo pero me sale un errror al querer importar, dice que no se encuentra el archivo de trabjo o bien esta siendo usado por otro usuario en modo exclusivo, me podrian ayudar por favor, llevo muy poco con delphi
Responder Con Cita
  #8  
Antiguo 01-02-2008
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.734
Poder: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Cual de los ejemplos?
Postea parte del código donde ocurre el error.

De todos modos, puede ser que lo tengas abierto con excel y quieras acceder a él.
Cita:
dice que no se encuentra el archivo de trabjo o bien esta siendo usado por otro usuario en modo exclusivo
También puede ser que no estés pudiendo abrirlo, porque no pones la ruta correcta.
Cita:
dice que no se encuentra el archivo de trabjo o bien esta siendo usado por otro usuario en modo exclusivo
Responder Con Cita
  #9  
Antiguo 01-02-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
gracias

gracias por la ayuda ya puede hacer la conexion a excel, ahora solo me falta buscar como hacer que esos datos se almacenen en mi bd muchas gracias.
Responder Con Cita
  #10  
Antiguo 05-02-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
hola caral

Cita:
Empezado por Caral Ver Mensaje
Hola
Aqui hay un ejemplo.
Saludos
HOLA CARAL OJALA Y ME PUEDAS AYUDAR CON LA DUDA QUE TENGO:

PUDE HACER LA CONEXION CON EXCEL Y MOSTRAR TODOS LOS DATOS EN UN DBGRID, PERO QUIERO GUARDAR TODOS ESOS DATOS QUE ESTAN EN EL DBGRID EN MI BD MI DUDA ES ¿PUEDO ASOCIAR DE ALGUNA MANERA ESE DBGRID CON OTRO DARASORCE QUE TENGO CONECTADO CON UN QUERY?, PARA QUE PUEDA GUARDAR LOS DATOS DE ESE DBGRID.
ESPERO Y ENTIENDAS MI DUDA. GRACIAS Y SALUDOS
Responder Con Cita
  #11  
Antiguo 05-02-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Nunca he hecho nada parecido, en el enlace que te puse usan ADO para la conexión.
Lo que se me ocurre es usar la información que trae el dataset de ado y de ahí pasarla a la base de datos, otra forma seria usar las celdas del dbgrid, creo que esto depende de lo que se quisiera hacer, que datos incorporar en que orden etc.
No me hagas mucho caso, esperemos a ver si algún maestro nos ayuda.
Saludos
Responder Con Cita
  #12  
Antiguo 05-02-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
guardar en la bd!!!!!

hola se que ya llevo mucho tiempo con este problema pero en verdad como les dije antes soy muy novato en delphi les pongo el codigo que tengo con este codigo ya puedo vizualizar los datos de un archivo .xls en un dbgrid pero nose como guardarlos en mi bd, tengo un pequeño codigo que encontre pero no me los guarda en la tabla, para la conexion a excel utiliza un adoconection,adotable y un data acces, y para guardar los datos estoy intentandolo hacer con un query espero y me puedan dar una solucion mil gracias....


unit Unit4;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, StdCtrls, ExtCtrls, DB, ADODB, Grids, DBGrids, DBTables;
type
TForm4 = class(TForm)
Panel1: TPanel;
Panel2: TPanel;
Button2: TButton;
SALIR: TBitBtn;
DBGrid2: TDBGrid;
ADOTable1: TADOTable;
ADOConnection1: TADOConnection;
DataSource1: TDataSource;
DataSource2: TDataSource;
Button1: TButton;
Query1: TQuery;
procedure Button2Click(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form4: TForm4;
implementation
uses Unit1;
{$R *.dfm}
procedure TForm4.Button2Click(Sender: TObject);
begin
// conectar y obtener datos
ADOTable1.Open;
end;
procedure TForm4.Button1Click(Sender: TObject);
begin
with form1 do
begin

if Form4.ModalResult = mrOK then begin
DBGrid2.DataSource.DataSet.First;While not (DBGrid2.DataSource.DataSet.Eof) Do
Begin
Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('INSERT INTO cliente (clavecliente, nombre, apellido,direccion,telefono,CP,RFC,clavemaquinaria)');
Query1.SQL.Add('VALUES (:cla, :nom, :ape, :dir, :tel, :c, :r, :ma)');
Query1.ParamByName('cla').Value:=DBGrid2.DataSource.DataSet.FieldByName('clavecliente').value;
Query1.ParamByName('nom').Value:=DBGrid2.DataSource.DataSet.FieldByName('nombre').value;
Query1.ParamByName('ape').Value:=DBGrid2.DataSource.DataSet.FieldByName('apellido').value;
Query1.ParamByName('dir').Value:=DBGrid2.DataSource.DataSet.FieldByName('direccion').value;
Query1.ParamByName('tel').Value:=DBGrid2.DataSource.DataSet.FieldByName('telefono').value;
Query1.ParamByName('c').Value:=DBGrid2.DataSource.DataSet.FieldByName('CP').value;
Query1.ParamByName('r').Value:=DBGrid2.DataSource.DataSet.FieldByName('RFC').value;
Query1.ParamByName('ma').Value:=DBGrid2.DataSource.DataSet.FieldByName('clavemaquinaria').value;
Query1.ExecSQL;
DBGrid2.DataSource.DataSet.Next;
End;
end;
end;
end;
end.
Responder Con Cita
  #13  
Antiguo 05-02-2008
Avatar de Caral
[Caral] Caral is offline
Miembro Premium
 
Registrado: ago 2006
Posts: 7.659
Poder: 25
Caral Va por buen camino
Hola
Y que te guarda, nada, una linea, te da algun error?
Te lo digo por que no entiendo el codigo, si dices que usas ado, como puedes hacer esto:
Código Delphi [-]
Query1.ParamByName('cla').Value:=DBGrid2.DataSource.DataSet.FieldByName('clavecliente').value;
Cuando seria esto:
Código Delphi [-]
ADOQuery1.parameters.ParamByName('cla').Value:=DBGrid2.DataSource.DataSet.FieldByName('clavecliente'  ).value;
o esto:
Código Delphi [-]
ADOQuery1.parameters[0].Value:=DBGrid2.DataSource.DataSet.FieldByName('clavecliente').value;
[/delphi]
La parte del dbgrid no la entiendo muy bien, se que se hace un recorrido al dataset pero no se si hara lo que quieres.
Sigue, no te desesperes ya aparecera alguien con la solucion.
Saludos
Responder Con Cita
  #14  
Antiguo 05-02-2008
keyboy keyboy is offline
Miembro
 
Registrado: oct 2004
Posts: 367
Poder: 20
keyboy Va por buen camino
Yo comenzaría agregando alguna etiqueta al código de arriba porque así es ilegible. Después me olvidaría del DBGrid. Si lo que quieres es transferir datos de una hoja de Excel a alguna base de datos, el DBGrid sale sobrando: si lo tienes conectado al ADOTable, entonces nota que DBGrid.DataSource.DataSet no es más que un camino largo para referirte al mismo ADOTAble. Por último, ayudaría que dijeras cuál es la base destino. Por ejemplo, si es Access o Paradox, te conviene más usar un Table que un Query. Otro tipo de bases de datos, como MySQL, permiten inserciones múltiples en una sóla consulta SQL, por lo que te convendría más un sólo Exec. En fin, que si das más detalles, sería más fácil.

Bye
Responder Con Cita
  #15  
Antiguo 06-02-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
hola

estoy usando mysql, el problema es que no puedo almacenar los datos de la hoja de excel en la bd, lo unico que eh podido hacer es que los datos de la hoja de excel se muestren en un dbgrid pero no los puedo almacenar ¿me puedes ayudar?
gracias a todos por lo anterior.
Responder Con Cita
  #16  
Antiguo 06-02-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
Red face

Cita:
Empezado por keyboy Ver Mensaje
Yo comenzaría agregando alguna etiqueta al código de arriba porque así es ilegible. Después me olvidaría del DBGrid. Si lo que quieres es transferir datos de una hoja de Excel a alguna base de datos, el DBGrid sale sobrando: si lo tienes conectado al ADOTable, entonces nota que DBGrid.DataSource.DataSet no es más que un camino largo para referirte al mismo ADOTAble. Por último, ayudaría que dijeras cuál es la base destino. Por ejemplo, si es Access o Paradox, te conviene más usar un Table que un Query. Otro tipo de bases de datos, como MySQL, permiten inserciones múltiples en una sóla consulta SQL, por lo que te convendría más un sólo Exec. En fin, que si das más detalles, sería más fácil.

Bye
hola keyboy, mira el error que me sale al querer guardar los datos de la hoja de excel es:ADOTable.File"clave cliente" not found, pero nose a que se deba ojala y me puedas ayudar gracias.
Responder Con Cita
  #17  
Antiguo 06-02-2008
MARLON1 MARLON1 is offline
Miembro
 
Registrado: nov 2007
Posts: 118
Poder: 17
MARLON1 Va por buen camino
hola

Cita:
Empezado por poliburro Ver Mensaje
Para eso nada mejor que ADO,
ojala y puedas ayudarme,¿sabes como hacer que los datos de un dbgrid se almacenen en una tabla de mi bd?.Estoy intentando con este codigo pero me marca un error que en la ADOTable no se encuentra el archivo clavecliente, me podrias ayudar diciendome como debo de poner la sentencia para que ya no tome los datos de la ADOTable sino del dbgrid espero y me hayas entendido saludos.

Query1.Close;
Query1.SQL.Clear;
Query1.SQL.Add('INSERT INTO cliente (clavecliente, nombre, apellido,direccion,telefono,CP,RFC,clavemaquinaria)');
Query1.SQL.Add('VALUES (:cla, :nom, :ape, :dir, :tel, :c, :r, :ma)');
--esta es la parte donde tengo el error--Query1.ParamByName('cla').Value:=DBGrid2.DataSource.DataSet.FieldByName('clavecliente').value;
Responder Con Cita
Respuesta



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
Llamar a excel desde delphi jessie Servers 5 22-12-2010 23:09:02
Formato De Excel Desde Delphi zvf OOP 2 23-02-2007 06:25:17
Formateo desde Delphi a Excel mayte mtz SQL 3 09-08-2006 23:55:45
a excel desde delphi SEBAC_28 Servers 3 21-12-2004 15:47:01
Formato Excel Desde Delphi Bagy Servers 1 22-06-2004 08:45:08


La franja horaria es GMT +2. Ahora son las 07:33:52.


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