Ver Mensaje Individual
  #32  
Antiguo 15-09-2008
Rancy Rancy is offline
Miembro
 
Registrado: may 2008
Posts: 17
Reputación: 0
Rancy Va por buen camino
Hola
Tengo un problema con el código que escribió Caro en la primera pagina (era el siguiente):

Código Delphi [-]
const
  xlCellTypeLastCell = $0000000B;
var
 Excel, Sheet: OLEVariant;
 CantRow, CantCol, i, j : Integer;
 RangoMatriz: Variant;
begin
  FileName := 'C:\Archivo.xls';
  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
      Showmessage(RangoMatriz[i,j]);
      //haces todo lo que necesites hacer
     end;
   end;//for

Concretamente mi problema esta en esta línea:
Código Delphi [-]
Excel := CreateOleObject('Excel.Application');

El error es Undeclared identifier 'CreateOleObject'

Además, a intervalos regulares me aparece el mensage de error:
Unable to cast object of type 'Borland.Delphi.VariantType' to type 'Borland.Delphi.Unit'

Y no se como solucionar ninguna de las dos cosas. Tal vez sea algo muy básico, ya que a los demas que han probado el código les ha funcionado perfectamente. Alguna idea de por dónde puede ir el error?

Mi intención es leer el documento excel para luego ir guardando la información listada. Uso delphi 2007, por si es de utilidad saberlo.
Sinceramente estoy bastante perdido.

Gracias por adelantado.
Responder Con Cita