![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Работа с Excel [D6]
V l a d i m i r © (2004-08-09 13:34:00)Добрый день! Вопрос, возможно, легкий, но интересный… Дело в том, что в процессе работы приложения, я обращаюсь к файлу Excel. Как загружать данные из ячеек я знаю, однако в настоящий момент встала новая задача: определить в документе Excel (данные хранятся только в первом листе) конец документа. Если быть точным, необходимо получить номер строки, выше которой документ «забит» информацией и ниже которой все ячейки пусты.
Буду благодарен за любую идею, спасибо.
V l a d i m i r (2004-08-10 16:53:00) [1]Что-то не работает... :(
Я пытался сделать вот так:
Sheet.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Activate;
Info := Sheet.ActiveCell.Row;
ShowMessage(Info);
Korvin (2004-08-09 15:22:00) [2]Ex.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Activate;
nE := Ex.ActiveCell.Row;
V l a d i m i r (2004-08-09 14:51:00) [3]> RDen
> вот что сообщает макрос, который выделяет последнюю ячейку:
А как его использовать? Я открыл файл excel, книгу, обратился к первому листу и т.д. А как использовать этот макрос, чтобы получить сообщение?
RDen (2004-08-09 14:32:00) [4]вот что сообщает макрос, который выделяет последнюю ячейку:
Selection.SpecialCells(xlCellTypeLastCell).Select
V l a d i m i r (2004-08-09 14:12:00) [5]Доступ к ячейкам упрощенно можно показать на следующем примере: размещаем на форме компонент типа TexcelApplication (Name: XLApp, свойство ConnectKind: ckNewInstance).
procedure TForm1.Button1Click(Sender: TObject);
var
WorkBook, Sheet: Variant;
FileLocate: WideString;
Info: String;
Begin
XLApp.Connect;
FileLocate := 'C:\1.xls';
//Открываю файл Excel
XLApp.WorkBooks.Open(FileLocate, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam,EmptyParam,0);
//Открываю книгу и обращаюсь к первому листу
WorkBook := XLApp.WorkBooks.Item[1];
Sheet:=XLApp.Application.Worksheets.Item[1];
//Читаю вторую строку и вторую ячейку, содержащую любую информацию
Info:=Sheet.Cells[11,2];
ShowMessage(Info);
End;
А как переместить курсор в конец документа и получить строку окончания документа?