Страница: 1 |
Вопрос: Почему шестая строка? | Добавлено: 06.04.05 23:40 |
Автор вопроса: ![]() |
Есть немного кода (кто-то здесь подсказал)
Private Sub But_Click() Dim c Dim n n = 0 For Each c In ActiveSheet.Columns(7).Cells If (Not (IsEmpty(c.Value))) Then If (IsNumeric(c.Value)) Then If (Not (c.Value = 0)) Then n = n + 1 End If End If End If Next c Worksheets("Лист").Cells(n + 1, 7) = Box.Text Worksheets("Лист").Cells(n + 1, 7).NumberFormat = "#,##0.00$" Worksheets("Лист").Cells(n + 1, 8) = Now Form.Hide End Sub При нажатии на кнопку должно вносится значение из TextBox'а в последнюю пустую ячейку 7 столбца. Если столбец пустой, то соответственно в первуя ячейку. А у меня почему-то столбец начинается с шестой ячейки. Т.е. при пустом столбце первое значение вносится в G6. Как с этим бороться? |
Ответы | Всего ответов: 4 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() Вопросов: 224 Ответов: 3777 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 06.04.05 23:45 |
с этой штукой не реботал, но по-моему похожие глюки вылазят когда нумерация чего-то начинается с нуля а не с единицы |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 0 Ответов: 73 |
Профиль | Цитата | #2 | Добавлено: 07.04.05 16:05 |
В сети очень много примеров определения последней ячейки, в том числе и без перебора всех 65536 ячеек в столбце.
А самое главное, что Ваш код, то это не определение последней ячейки в столбце, а подсчёт количества числовых значений, отличных от нуля, а это значит, что в Вашем столбце "G" имеется пять таких значений. При этом они могут располагаться в любых ячейках этого столбца. |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 14 Ответов: 29 |
Профиль | Цитата | #3 | Добавлено: 07.04.05 22:12 |
Точно! Как я сразу-то повнимательней не поглядел.
Вот, что значит спешка! Спасибо. To Morpheus Перебор с нуля, чтобы в первой строке вставлял значение. |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 0 Ответов: 73 |
Профиль | Цитата | #4 | Добавлено: 07.04.05 22:39 |
- Festina lente
- На самом деле перебор начинается с самой первой ячейки столбца "G", а вот начальное значение "счётчика" действительно ноль, хотя строку n = 0 можно убрать, без всякого ущерба функциональности кода. |
Страница: 1 |
|