|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
Имеется таблица , кол. строк меняется, и всегда есть 1-2 пустые строки с нулями. Какой код надо написать , чтобы наити эту пустую строку и скрыть ее! ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2004, 18:37 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
vallotвсегда есть 1-2 пустые строки с нулямиТак пустые или с нулями? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.10.2004, 19:39 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
Часть ячеек в строке пустые а часть с нулями! Это таблица Pivot , которая так отображает исходную таблицу, если в исходной SELECT 50 строк, но заполнено бывает то 10, то 25 и т.д. И таблица Pivot в этом случае показывает пустую строку (а где колонки с итогами там нули). И я хочу скрыть эту строку,чтобы не шла в печать ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2004, 08:43 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
Так, м.б., легче бороться с причиной, а не следствием? Удалить пустые строки из сырья для сводной таблицы проще! ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2004, 10:24 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
Ну а какой код написать в этой борьбе??? ... |
|||
:
Нравится:
Не нравится:
|
|||
17.10.2004, 08:49 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
1. Выделяешь UsedRange на требуемом листе. 2. Сортируешь записи по убыванию ключевого поля; пустые строки соберутся в конце диапазона. 3. Образуешь диапазон, включающий строки от шапки таблицы до последней непустой записи. 4. По этому диапазону строишь сводную таблицу. Восстанавливать для неё исходный порядок записей нет нужды. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.10.2004, 16:13 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
А я вот так сделал, вроде пашет, может кто проще может? ,------------------------------ Dim i As Integer Dim j As Integer For i = 10 To 50 For j = 8 To 12 If Sheet4.Cells(i, 8) = 0 _ And Sheet4.Cells(i, 9) = 0 _ And Sheet4.Cells(i, 10) = 0 _ And Sheet4.Cells(i, 11) = 0 _ And Sheet4.Cells(i, 12) = 0 Then Sheet4.Cells(i, j).EntireRow.Hidden = True ElseIf Sheet4.Cells(i, j) = "" Then Sheet4.Cells(i, j).EntireRow.Hidden = False End If Next j Next i --------------------------------------------- ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2004, 00:49 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
Это - частное, локальное решение. Предложенное выше - общее решение. И по объёму рукописного кода оно сопоставимо с частным. Однако, повторюсь, в случае построения сводных таблиц необходимо устранять причину, а не бороться с её следствиями. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2004, 10:35 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
А это мой окончательный вариант! ,------------------------------ Dim i As Integer For i = 10 To 50 If Sheet4.Cells(i, 8) = 0 _ And Sheet4.Cells(i, 9) = 0 _ And Sheet4.Cells(i, 10) = 0 _ And Sheet4.Cells(i, 11) = 0 _ And Sheet4.Cells(i, 12) = 0 Then Sheet4.Cells(i, 1).EntireRow.Hidden = True End If Next i ... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2004, 10:52 |
|
Excel_Vb_Hide Row
|
|||
---|---|---|---|
#18+
немного эстетики и гибкости Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.
... |
|||
:
Нравится:
Не нравится:
|
|||
19.10.2004, 12:17 |
|
|
start [/forum/search_topic.php?author=SKAI_Academy&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
get settings: |
9ms |
get forum list: |
14ms |
get settings: |
10ms |
get forum list: |
12ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
others: | 1598ms |
total: | 1821ms |
0 / 0 |