|
Как узнать сколько строк на листе xls? | ☑ | ||
---|---|---|---|---|
0
SherifSP
31.07.13
✎
11:16
|
Есть ли какой метод, чтобы узнать сколько строк на листе xls?
|
|||
1
Aleksey
31.07.13
✎
11:17
|
на каком языке?
|
|||
2
Капитан О
31.07.13
✎
11:17
|
ПоследняяСтрока=Sheet.Cells.SpecialCells(11).Row;
|
|||
3
Базис
naïve
31.07.13
✎
11:17
|
Есть, в каждой обработке чтения файла XLS число строк определяется стандартным для экселя образом. Сам найдёшь образец или помочь?
|
|||
4
ДенисЧ
31.07.13
✎
11:18
|
Worksheet.UsedRange Property
Returns a Range object that represents the used range on the specified worksheet. Read-only. Syntax expression.UsedRange expression A variable that represents a Worksheet object. Example This example selects the used range on Sheet1. Visual Basic for Applications Worksheets("Sheet1").Activate ActiveSheet.UsedRange.Select |
|||
5
shuhard
31.07.13
✎
11:22
|
(0) лякго
через ADOX |
|||
6
SherifSP
31.07.13
✎
11:25
|
Ну вот например я выгружаю данные в массив, но чтобы не вводить количество строк и количество колонок хочу определить их программным способом и подставить
Область = ЛистЭксель.Range(ЛистЭксель.Cells(1,1), ЛистЭксель.Cells(ВсегоСтрок,ВсегоКолонок)); Данные = Область.Value.Выгрузить(); |
|||
7
ptiz
31.07.13
✎
11:27
|
ActiveSheet.UsedRange.Rows.Count
|
|||
8
ptiz
31.07.13
✎
11:28
|
(6) Данные = Лист.UsedRange.Value.Выгрузить();
|
|||
9
SherifSP
31.07.13
✎
11:34
|
(8) А число колонок?
|
|||
10
dk
31.07.13
✎
11:39
|
(9) Row на Column поменяй в примерах выше
голову когда включать будем? ) |
|||
11
ptiz
31.07.13
✎
11:40
|
(9) Зачем тебе вообще количество колонок/строк? Выгрузится всё само через Лист.UsedRange.Value.Выгрузить()
|
|||
12
SherifSP
31.07.13
✎
12:16
|
Для Book = 1 По ВсегоЛистовВКниге Цикл
Для Счетчик = 1 По ВсегоСтрок Цикл НоваяСтрока = ТЗ.Добавить(); КонецЦикла; ЛистЭксель = Эксель.WorkSheets(Book); Область = Эксель.ActiveSheet.UsedRange.Rows.Count; Данные = ЛистЭксель.UsedRange.Value.Выгрузить(); Метод в (7)(8) только для 1 листа xls, а если несколько то как тогда быть? |
|||
13
dk
31.07.13
✎
12:31
|
капец ленивый народ пошел
|
|||
14
SherifSP
31.07.13
✎
12:38
|
(13) Сделал уже, так это не удивительно, 1Сники все такие + ко всему очень жадные)
|
|||
15
SherifSP
31.07.13
✎
12:40
|
Область = ЛистЭксель.Range(ЛистЭксель.Cells(1,1), ЛистЭксель.Cells(ЛистЭксель.Cells(1,1).SpecialCells(11).Row,ЛистЭксель.Cells(1,1).SpecialCells(11).Column));
Данные = Область.Value.Выгрузить(); Только немного дольше чем (0) отрабатывает код в (0) 008,17 - текущий код 022,04 ( но думаю сэкономить время на свертке ТЗ |
|||
16
SherifSP
31.07.13
✎
12:43
|
Есть ли способ быстрее выгрузить данные в массив?
|
|||
17
SherifSP
31.07.13
✎
12:44
|
Может индексация какая или еще что то?
|
|||
18
SherifSP
31.07.13
✎
12:49
|
Большая благодарность Ptiz способ в (8) самый быстрый и правильный )
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |