powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Количество строчек на странице Excel
10 сообщений из 10, страница 1 из 1
Количество строчек на странице Excel
    #34698799
Access denied
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
не пинайте сильно, если вопрос обсасывался неоднократно - не могу сообразить как по OLE узнать сколько строчек на странице документа Excel :-(
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
 var 
  XL : Variant;
 begin 
  XL := CreateOleObject('Excel.Application');
  XL.Workbooks.Open(AFileName);
...
  XL.Sheets[ 1 ].Rows.Count;
...
пишет общее количество строчек, а мне нужно то, на которое осуществляется переход по Ctrl-End
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #34698851
Фотография Куликов Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Access deniedне пинайте сильно, если вопрос обсасывался неоднократно - не могу сообразить как по OLE узнать сколько строчек на странице документа Excel :-(
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
 var 
  XL : Variant;
 begin 
  XL := CreateOleObject('Excel.Application');
  XL.Workbooks.Open(AFileName);
...
  XL.Sheets[ 1 ].Rows.Count;
...
пишет общее количество строчек, а мне нужно то, на которое осуществляется переход по Ctrl-End

Запиши макрос и посмотри как называется эта ячейка...
Код: plaintext
ActiveCell.SpecialCells(xlLastCell).Select
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #34699016
Access denied
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Куликов АлексейЗапиши макрос и посмотри как называется эта ячейка...
Код: plaintext
ActiveCell.SpecialCells(xlLastCell).Select

макрос я первым делом и сгенерил, только непонятно как его анализировать :(
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #34699072
Фотография Куликов Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Access denied Куликов АлексейЗапиши макрос и посмотри как называется эта ячейка...
Код: plaintext
ActiveCell.SpecialCells(xlLastCell).Select

макрос я первым делом и сгенерил, только непонятно как его анализировать :(

Как видишь, так и анализируешь...

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
 procedure  Excel_Delphi;
 var 
  Excel, WorkBook, Sheet, Rabge, Value : OleVariant;
  CountRow, CountCol : integer;
 begin 
    Excel := CreateOleObject('Excel.Application'); 
    WorkBook := Excel.Workbooks.Open(sToFileName); 
    Sheet := Excel.Workbooks[ 1 ].Sheets[ 1 ]; 
    Range := Sheet.UsedRange;
    Value := Range.Value;

    CountRow := Range.Rows.Count;  
    CountCol := Range.Columns.Count; 
 end ;
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #34699079
Фотография Куликов Алексей
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
    XL:=CreateOleObject('Excel.Application');
    XL.Application.EnableEvents := False;
    WorkBook:=XL.WorkBooks.Add(ExtractFileDir(Application.ExeName)+'\Report.xls');
    Workbook.WorkSheets[ 1 ].Cells.SpecialCells(xlLastCell, EmptyParam).Activate;
    Size_X := XL.ActiveCell.Column;
    Size_Y := XL.ActiveCell.Row;
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #34699230
Access denied
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
спасибо, оно:)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
 var 
  XL : Variant;
  Rows: Integer;
 begin 
  XL := CreateOleObject('Excel.Application');
  XL.Workbooks.Open(AFileName);

  XL.Sheets[ 1 ].Select;
  XL.Sheets[ 1 ].Cells.SpecialCells(xlLastCell, EmptyParam).Activate;

  Rows := XL.ActiveCell.Row;
...
  XL.Sheets[ 2 ].Select;
  XL.Sheets[ 2 ].Cells.SpecialCells(xlLastCell, EmptyParam).Activate;

  Rows := XL.ActiveCell.Row;
...
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Количество строчек на странице Excel
    #39945815
Фотография kuzduk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
XL := CreateOleObject('Excel.Application');
XL.Workbooks.Open(ExcelFilePath);

//Первый вариант:
UsedRowCount := iSheet.UsedRange.Rows.Count;  //Если у тебя заняты первые десять строк то вернёт 10. Однако если идут первые две строки пустые, а потом 10 занятых, то один хрен вернёт 10, ибо возвращает количество занятых строк.
UsedColCount := iSheet.UsedRange.Columns.Count;
FirstUsedRow := iSheet.UsedRange.Row; //Номер первой строки в которой прописана ячейка
FirstUsedCol := iSheet.UsedRange.Column; //Номер первой колонки в которой прописана ячейка
LastUsedRow  := FirstUsedRow + UsedRowCount - 1;
LastUsedCol  := FirstUsedCol + UsedColCount - 1;
     

//Второй вариант: через активацию последней непустой ячейки
//const xlCellTypeLastCell = $0000000B;
iSheet.Cells.SpecialCells(xlCellTypeLastCell, EmptyParam).Activate; //Если лист пуст(ни одна ячейка не прописана), то строка вызывает ошибку
LastUsedRow := XL.ActiveCell.Row;
LastUsedCol := XL.ActiveCell.Column;
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #39945836
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И кому, кроме тебя, это нужно ?
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #39945857
Гаджимурадов Рустам
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да пусть будет, для тех кто будет искать.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Количество строчек на странице Excel
    #39945859
ъъъъъ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
DimaBr,

это же ТС. 13 лет исследований.
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Количество строчек на странице Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]