Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Servers (https://www.clubdelphi.com/foros/forumdisplay.php?f=9)
-   -   Problemas delphi 7 y excel (https://www.clubdelphi.com/foros/showthread.php?t=28232)

gilberto_1126 13-12-2005 21:45:14

Problemas delphi 7 y excel
 
Saludos
Tengo un problema.

Hace tiempo hice una aplicacion con delphi 5 en donde el contenido de un archivo en excel lo exportaba a un stringgrid con el siguiente codigo:
ExcelApplication1.Connect;
ExcelApplication1.Workbooks.Open(pathfile, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,0);
j:=1;
cont:=0;
while cont<=14 do
begin
cadena:=ExcelApplication1.Cells.Item[j,1].value;
if (cadena)='' then
cont:=cont+1;
j:=j+1;
end;
y:=j-14;
StringGrid1.ColCount:=15;
StringGrid1.RowCount:=y;
i:='N'+ IntToStr(y);
RangeMatrix:= ExcelApplication1.Range['A1',i];
ExcelApplication1.WorkBooks.Close(0);
ExcelApplication1.Quit;
ExcelApplication1.Disconnect;
for R:=1 to 14 do
begin
StringGrid1.Cells[(R),0]:=columna[R];
for k:=1 to y do
begin
StringGrid1.Cells[(R),(k)]:=RangeMatrix[k,R];
StringGrid1.Cells[0,(k)]:=IntToStr(k);
end;
end;
end;
Este codigo lo que hace es que toma el tamaño de una hoja que tiene hasta la Columna 'N' pero tiene x numero de filas y todos los valores lo guarda en una variable que nombre RangeMatriz.
En delphi 5 me funciona muy bien pero cuando cambie a delphi 7 me genera un error en donde estan los asteriscos
StringGrid1.Cells[(R),0]:=columna[R];
for k:=1 to y do
begin
******-*StringGrid1.Cells[(R),(k)]:=RangeMatrix[k,R];**********
StringGrid1.Cells[0,(k)]:=IntToStr(k);
end;
alguien me podra ayudar por favor

Neftali [Germán.Estévez] 14-12-2005 12:08:12

Cita:

Empezado por gilberto_1126
...En delphi 5 me funciona muy bien pero cuando cambie a delphi 7 me genera un error

(1) Lee la guía de estilo. http://www.clubdelphi.com/foros/guiaestilo.php
(2) Usa los TAG's de [ delphi ]..[ /delphi ] cuando escribas código.
(3) Dinos cual es el error que te da, porque si no va a ser difícil...
(4) Vuelve a leer la guía de estilo, nunca está de más... ;)

gilberto_1126 14-12-2005 16:04:01

Error de excel en delphi 7
 
Gracias por contestar

Mira el error que me aparece en tiempo de ejecucion es el sig:

"Project Pase.exe raised exception class EVariantInvalidArgError whit message 'Invalid Argument'. Process stoped. Use Step or Run to continue."

Y no se que pueda ser

Como lo dije anteriormente en delphi 5 si me funciona bien pero cuando lo cambie a delphi 7 es cuando me aparecio.

gilberto_1126 14-12-2005 16:08:35

error
 
La variable RangeMatriz es de tipo Variants y en esta se guardan todos los valores de la hoja de excel que voy a vaciar al stringgrid.

Neftali [Germán.Estévez] 14-12-2005 17:17:00

Prueba a añadir la Unit Variants al uses.

gilberto_1126 14-12-2005 17:23:10

error
 
Si lo tengo

De hecho si no lo pusiera me generaria errores al momento de compilarlo.
El problema como les digo es al momento de ejecutarlo, como saben cuando lo corres primero lo compila, pues si pasa la prueba de compilacion pero cuando voy a tomar los valores de la variable RangeMatriz en ejecucion es cuando truena.

De antemano gracias por su tiempo.

Neftali [Germán.Estévez] 15-12-2005 11:18:45

Cita:

Empezado por gilberto_1126
...pero cuando voy a tomar los valores de la variable RangeMatriz en ejecucion es cuando truena.

Haz una ejecución paso a paso a ver qué valores está tomando en ese punto.


La franja horaria es GMT +2. Ahora son las 12:48:59.

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