Ver la Versión Completa : Rangos
trex2000
28-05-2005, 19:45:42
Saludos:
Tengo una pequeña aplicacion que sacaba datos de excel y los mandaba a una tabla por medio de ADO, pero ahora tengo que importar por medio de rangos y no se como hacer esto, ¿alguien me podria ayudar?
De antemano muchas gracias :confused:
ramiretor
02-06-2005, 00:20:47
Hola:
No me queda claro que son los rangos
Saludos
trex2000
02-06-2005, 17:35:31
A lo que me refiero con los rangos es por ejemplo que tenga que importar de la celda A7 a la celda G27 pero no siempre es el mismo rango en otras ocasiones puede ser del B10 a H20.
Espero haberme dado a entender
De antemano muchas gracias
ramiretor
02-06-2005, 19:35:01
Hola:
Necesito que pongas el código como lees en el archivo de Excel.
Saludos
trex2000
02-06-2005, 20:41:27
Saludos:
Es que por lo pronto nomas hago un Select
Modulo.ADOQ_Excel.Close;
Modulo.ADOQ_Excel.SQL.Clear;
Modulo.ADOQ_Excel.SQL.Add('Select * From [Reporte$]');
Modulo.ADOQ_Excel.Open;
el Query esta conectado a un ADOConnectio.
No se si con eso sea suficiente.
De antemano muchas gracias.
ramiretor
02-06-2005, 23:19:37
Hola:
Pensé que trabajabas con la paleta de componentes SERVERS o algo similar, y de ahi cargabas con ADO la tabla destino. Así como lo haces ¿se trae los valores de una hoja de Excel o de todo el libro?
Saludos
trex2000
03-06-2005, 00:12:54
Hola:
Se trae los valores de la hoja que de le diga en el from
ramiretor
03-06-2005, 00:27:59
Pues entonces tienes de dos caminos, 1) abrir el archivo Excel copiar el rango y ponerlo en otra hoja del libro y continuar como lo has venido haciendo ó 2) Hacer una macro en la que le pases como parámetro el rango que quieres copiar y pegarlo en una hoja de resultados. Te pongo el ejemplo como lo haría en Delphi:
uses ComObj,....
procedure CopiaDatos(NombreArchivo, Rango: String);
var
Excel, Libro: Variant;
begin
try
Excel := CreateOleObject('Excel.Application');
except
Excel.Quit;
ShowMessage('Imposible abrir Excel');
exit;
end;
Excel.DisplayAlerts := False;
Excel.WorkBooks.Open(NombreArchivo);
//Excel.Visible := True;
Excel.WorkSheets['Fuente'].Select;
Excel.Range[Rango].Select;
Excel.Selection.Copy;
Libro := Excel.Workbooks[1];
Excel.WorkSheets['Destino'].Select;
Excel.Range['A1'].Select;
Excel.ActiveSheet.Paste;
Libro.SaveAs(NombreArchivo);
Excel.Quit;
end;
Donde Fuente y Destino son hojas del libro de Excel. NombreArchivo es la ruta completa del archivo de Excel. Rango es el rango que quieres llevarte a la base de datos.
PD: Necesitas ver si es necesario que salves el archivo de lo contrario, no necesitas la variable Libro.
Espero te sirva
Saludos
trex2000
03-06-2005, 01:14:27
Saludos:
Muchas gracias deja probar y te aviso haber como me fue
vBulletin v3.6.8, Derechos ©2000-2024, Jelsoft Enterprises Ltd.