Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Вниз

Работа с Excel   Найти похожие ветки 

 
V l a d i m i r   (2004-08-09 13:34) [0]

Добрый день! Вопрос, возможно, легкий, но интересный… Дело в том, что в процессе работы приложения, я обращаюсь к файлу Excel. Как загружать данные из ячеек я знаю, однако в настоящий момент встала новая задача: определить в документе Excel (данные хранятся только в первом листе) конец документа. Если быть точным, необходимо получить номер строки, выше которой документ «забит» информацией и ниже которой все ячейки пусты.

Буду благодарен за любую идею, спасибо.


 
V l a d i m i r   (2004-08-09 14:12) [1]

Доступ к ячейкам упрощенно можно показать на следующем примере: размещаем на форме компонент типа 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;


А как переместить курсор в конец документа и получить строку окончания документа?


 
RDen   (2004-08-09 14:32) [2]

вот что сообщает макрос, который выделяет последнюю ячейку:

Selection.SpecialCells(xlCellTypeLastCell).Select


 
V l a d i m i r   (2004-08-09 14:51) [3]

> RDen


> вот что сообщает макрос, который выделяет последнюю ячейку:


А как его использовать? Я открыл файл excel, книгу, обратился к первому листу и т.д. А как использовать этот макрос, чтобы получить сообщение?


 
Korvin   (2004-08-09 15:22) [4]

Ex.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Activate;
nE := Ex.ActiveCell.Row;


 
V l a d i m i r   (2004-08-10 16:53) [5]

Что-то не работает... :(

Я пытался сделать вот так:

Sheet.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Activate;
Info := Sheet.ActiveCell.Row;

ShowMessage(Info);



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.037 c
3-1090846354
AleXqwq
2004-07-26 16:52
2004.08.22
ADO+MySql


1-1092026047
Новичек
2004-08-09 08:34
2004.08.22
Преобразование типов.


1-1092057780
galexis
2004-08-09 17:23
2004.08.22
Перекодировка файла DOS в Win1251


1-1091809567
Niakris
2004-08-06 20:26
2004.08.22
массив из имен


1-1092070645
кш
2004-08-09 20:57
2004.08.22
мастера!!! помогите!!! как выполнить команду командной строки,





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский