|
|
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Недавно начал пробовать решать небольшие задачки с помощью макросов и часто сталкиваюсь с похожей задачей, когда нужно найти последнюю строку содержащюю данные, чтобы запустить цикл или скопировать определённую область. Идя по пути наименьшего сопротивления я в этих случаях всегда ищу столбец или строчку, в которой предполагаю не будет пустых ячеек, и подсчитываю количество простой функцией рабочего листа. Код: plaintext Но всё время есть опасность что в исходных данных будет где нибуть пустая ячейка (возможно просто ошибка) и последняя строчка посчитается неправильно. Да и вообще как найти последнюю строку или столбец диапазона с данными если если не знаешь будут ли там пустые ячейки встречаться или нет? Надеюсь у меня получилось объяснить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 08:48 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
посмотри этот топик http://www.sql.ru/forum/actualthread.aspx?tid=385309 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 10:30 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. Извиняюсь за вопросы, но если можно то я задам, а отвечать или нет вам решать 1) Я понимаю что вышеописанные варианты оба почти одно и то же, но может есть какая-то разница, если есть, то подскажите 2)Что значит Код: plaintext Код: plaintext 4) И самое главное - возможно ли не считать те ячейки которые содержат значения ошибки или "0" (это в том случае если на листе формулы протянуты дальше чем заканчивается диапазон данных) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 11:47 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Извиняюсь опять же, сасое главное забыл вышеописанные способы лучше чем приведённый далее? Если да, то почему? Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 11:59 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
1) первый вариант может быть использован для разных листов, т.к. лист указан в аргументе. Более универсальный вариант и, отличие от второго, не требует доработки для использования. Второй вариант - только идея. 2) Set rng = Cells - в переменную rng помещается диапазон "все ячейки текущего листа". 3) rng(1) - ссылка на первую ячейку по порядку из тех, что представлены в этом объекте (нумерация идет сначала в первом ряде слева направо, потом во втором и т.д.) 4) можно, но нужно дорабатывать, легче всего будет для конкретного листа с данными ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 12:01 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
DeggasadИзвиняюсь опять же, сасое главное забыл вышеописанные способы лучше чем приведённый далее? Если да, то почему? Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 12:02 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbapro1) первый вариант может быть использован для разных листов, т.к. лист указан в аргументе. Более универсальный вариант и, отличие от второго, не требует доработки для использования. Второй вариант - только идея. 2) Set rng = Cells - в переменную rng помещается диапазон "все ячейки текущего листа". 3) rng(1) - ссылка на первую ячейку по порядку из тех, что представлены в этом объекте (нумерация идет сначала в первом ряде слева направо, потом во втором и т.д.) 4) можно, но нужно дорабатывать, легче всего будет для конкретного листа с данными 1) Не понятно какая доработка нужна 2-му способу? 4) А как доработать? vbapro Deggasad Извиняюсь опять же, сасое главное забыл вышеописанные способы лучше чем приведённый далее? Если да, то почему? Код: plaintext 1. 2. 3. 4. 5. End Sub читай сообщения топика, откуда взял Читал, так и не понял если честно отличий там сказано, что это для листа целиком, так и 2 предыдущих примера вроде для листа целиком З.Ы.: Если задаю неправильные вопросы, не ругайте, просто я лучше их задам и не получу ответа, чем не попытаюсь мпросить совсем, это не значит что я совсем сам не хочу думать, на 80% вопросов которые у меня возникают я отвечаю сам. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 13:11 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
DeggasadИзвиняюсь опять же, сасое главное забыл вышеописанные способы лучше чем приведённый далее? Если да, то почему? Код: plaintext 1. 2. 3. 4. 5. 6. 7. Здесь речь не может идти о "лучше - хуже" - данные коды выполняют разные функции: - первые два кода (по сути одно и то же, только один - Function, а др. Sub) ищут последнюю ячейку по всему листу (во всех столбцах) - вышеуказанный код ищет последнюю ячейку в одном конкретном столбце KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 13:46 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
KL (XL) DeggasadИзвиняюсь опять же, сасое главное забыл вышеописанные способы лучше чем приведённый далее? Если да, то почему? Код: plaintext 1. 2. 3. 4. 5. 6. 7. Здесь речь не может идти о "лучше - хуже" - данные коды выполняют разные функции: - первые два кода (по сути одно и то же, только один - Function, а др. Sub) ищут последнюю ячейку по всему листу (во всех столбцах) - вышеуказанный код ищет последнюю ячейку в одном конкретном столбце KL [MVP - Microsoft Excel] Насчёт этого понял. Спасибо Открытый вопрос - Как не считать те ячейки которые содержат значения ошибки или "0" (это в том случае если на листе формулы протянуты дальше чем заканчивается диапазон данных)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 13:52 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Deggasad 1) Не понятно какая доработка нужна 2-му способу? 4) А как доработать? 1) например - перехват ошибок и др. 4) без конкретного примера трудно сказать DeggasadЗ.Ы.: Если задаю неправильные вопросы, не ругайте, просто я лучше их задам и не получу ответа, чем не попытаюсь мпросить совсем, это не значит что я совсем сам не хочу думать, на 80% вопросов которые у меня возникают я отвечаю сам. Спасибо! А что, кто-то тебя ругает? По-моему, vbapro очень корректно и на все отвечает :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 13:56 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
KL (XL) 1) например - перехват ошибок и др. 4) без конкретного примера трудно сказать Конкретный пример прилагаю Попытался максимально приблизить к реальности и в модуль уже записал оба варианта (и Function, и Sub) нахождения последней ячейки. Необходимо посчитать последнюю ячейку, не считая помеченных жёлтым цветом. Исхожу из условия что изменить формулы не имею возможности. За корректные ответы спасибо большое, я ведь эту корректность и не пытался поставить под сомнение! Просто боюсь показаться полным лентяем, так сказать больше оправдание для самого себя почему столько вопросов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 14:26 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Deggasad Необходимо посчитать последнюю ячейку, не считая помеченных жёлтым цветом. Исхожу из условия что изменить формулы не имею возможности. Обычно такой проблемы не стоит, т.к. на практике всегда есть уникальный столбец без формул по которому и определяют последнюю запись. Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 14:42 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vkodor Deggasad Необходимо посчитать последнюю ячейку, не считая помеченных жёлтым цветом. Исхожу из условия что изменить формулы не имею возможности. Обычно такой проблемы не стоит, т.к. на практике всегда есть уникальный столбец без формул по которому и определяют последнюю запись. Код: plaintext Я так сейчас и делаю (ну не совсем так, но теперь буду делать так) Просто случай такой, что теоритически в любом столбце последняя строчка может быть пустой, хотя в другом будет какое-то значение, поэтому и хочу перестраховаться на будущее! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 14:48 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
можно сделать комбинацию методик Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Далее по вопросам: проверку ячеек, что в них находится, лучше сделать в основном цикле. Т.е находишь физический конец данных с помощью универсальной функции LastRow, а в основной программе уже определяешь что там за данные: ошибки, #N/A или нули, и соотв. обрабатываешь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 15:11 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbapro Далее по вопросам: проверку ячеек, что в них находится, лучше сделать в основном цикле. Т.е находишь физический конец данных с помощью универсальной функции LastRow, а в основной программе уже определяешь что там за данные: ошибки, #N/A или нули, и соотв. обрабатываешь Идею понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 15:47 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbapro Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ошибка: нужно WS.Rows.Count вместо Rows.Count Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 15:57 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Как мог так и написал, по крайней мере надеюсь идея понятна, если подскажите как функции рабочего листа не использовать буду благодарен, сейчас работает впринципе нормально. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:06 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
для твоего частного случая, может быть, это совсем неплохой вариант. Ну тогда, хотя бы раздели функционально на две части, чтоб LastRow можно было использовать в других местах: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:24 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Спасибо за участие ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.02.2007, 16:54 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
не вопрос, а факт. т.к. сам участвовал в этом обсуждении и предлагал решения. решения оказались неверными, т.к. вот в таком файле не верно находится последняя колонка, если использовать алгоритм Код: plaintext 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.03.2007, 17:31 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbaproне вопрос, а факт. т.к. сам участвовал в этом обсуждении и предлагал решения. решения оказались неверными, т.к. вот в таком файле не верно находится последняя колонка, если использовать алгоритм Код: plaintext 1. 2. 3. 4. Интересно, что данная ошибка возникает в Excel 2000-2007 и не возникает в Excel 97 :-) Я всегда говорил - слияние ячеек в Excel это едва ли не самая глючная фича :-( KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2007, 03:23 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Еще факт. Возможно я последний, кто с ним встретился :), но пусть будет в топике. Конструкция типа Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2007, 21:18 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbaproЕще факт. Возможно я последний, кто с ним встретился :), но пусть будет в топике. Конструкция типа Код: plaintext А пример выложить можешь и указать версию Excel? А то у меня no repro :-) KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2007, 23:25 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Пожалуй тоже поучаствую. Мой любимый find тупит наглухо с автофильтром. В приложенном файле 2 листа. Если на первом косяк хоть как-то объясним (ищет последнюю видимую ячейку), то на втором листе вообще что-то непонятное, заметил, что это происходит когда все отфильтрованные значения находятся в начале списка и рядом друг с другом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2007, 00:23 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbaproЕще факт. Возможно я последний, кто с ним встретился :), но пусть будет в топике. Конструкция типа Код: plaintext У меня всегда находит последнюю видимую, вроде логика есть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2007, 00:25 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
DeggasadПожалуй тоже поучаствую. Мой любимый find тупит наглухо с автофильтром. В приложенном файле 2 листа. Если на первом косяк хоть как-то объясним (ищет последнюю видимую ячейку), то на втором листе вообще что-то непонятное, заметил, что это происходит когда все отфильтрованные значения находятся в начале списка и рядом друг с другом. Сутра перечитал. подумал а вдруг у вас не будет ошибки и решил поянить как онп выглядит у меня. У меня на листе В2 при данном фильтре последняя ячейка определяется определяется как D1 , т.е. смотрит только первую строку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2007, 07:36 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
попробуй запустить этот макрос Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2007, 11:32 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
сорри, версия Excel 2003 SP2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2007, 12:24 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
2Deggasad да, результат не тот, который ожидался, но дело скорее всего в алгоритме поиска, например Код: plaintext Опять же, в том примере, который я привел, конечно, есть лигика и, скорее всего, именно так и должно работать, ведь это метод реализующий Ctrl+Up, и пользователь должен попасть именно на последнюю видимую ячейку области. Просто при программировании этот метод не всегда подойдет для определения последней заполненной ячейки - скрытые не будут учтены. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2007, 13:06 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Даже когда я не знал про этот глюк, я всё равно открывая програмно книги, на листах которых стоит автофильтр всегда на всякий случай сбрасывал его. Мне лично никогда не нужно было в коде обращаться к отфильтрованному диапазону, но недавно помогал кому-то на форуме и там было такое условие, что использовать отфильтрованный диапазон. В данном случае использовал этот пример для нахождения последней видимой строки Код: plaintext vbapro ...ведь это метод реализующий Ctrl+Up... А если нужна именно последняя строка - нужно фильтр сбрасывать, есть конечно определённое неудобство... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2007, 14:46 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Ну что сказать? К сожалению у меня repro если задано условие в последнем столбце. Спасибо тебе vbapro, доконал последний, казавшийся более менее надежным, способ поиска последней ячейки :Ь Но впрочем я уже где-то писал, что абсолютного способа повидимому нет (или он еще не открыт) KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 20:22 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
KL (XL)Ну что сказать? К сожалению у меня repro если задано условие в последнем столбце. Спасибо тебе vbapro, доконал последний, казавшийся более менее надежным, способ поиска последней ячейки :Ь Но впрочем я уже где-то писал, что абсолютного способа повидимому нет (или он еще не открыт) KL [MVP - Microsoft Excel]Пожалуйста :), буду рад, если это поможет коллегам не наступать на эти грабли. К счастью, сам с этим столкнулся при тестировании - данные оказались очевидно неполными. В качестве компенсации привожу простой код, которым сам давно пользовался и на форуме эту идею видел: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 20:48 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
что такое repro ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 21:45 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
no repro значит, что явление не получается воссоздать или повторить, repro - соответсвенно, получается :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 22:34 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 22:51 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbapro KL (XL)Ну что сказать? К сожалению у меня repro если задано условие в последнем столбце. Спасибо тебе vbapro, доконал последний, казавшийся более менее надежным, способ поиска последней ячейки :Ь Но впрочем я уже где-то писал, что абсолютного способа повидимому нет (или он еще не открыт) KL [MVP - Microsoft Excel]Пожалуйста :), буду рад, если это поможет коллегам не наступать на эти грабли. К счастью, сам с этим столкнулся при тестировании - данные оказались очевидно неполными. В качестве компенсации привожу простой код, которым сам давно пользовался и на форуме эту идею видел: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. Ну во-первых, эта функция слегка привирает, а потом, она также находит и пустые ячейки с форматом отличным от стандартного. С таким же и даже лучшим результатом можно использовать: Код: plaintext 1. 2. 3. 4. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 23:10 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
KL (XL)Ну во-первых, эта функция слегка привирает, а потом, она также находит и пустые ячейки с форматом отличным от стандартного. С таким же и даже лучшим результатом можно использовать: Код: plaintext 1. 2. 3. 4. Это если использовать функцию vbapro на весь лист (без первого параметра), а если для специфического столбца (с первым параметром), то гораздо эффективнее: Код: plaintext 1. 2. 3. KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 23:21 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
KL (XL)Ну во-первых, эта функция слегка привирает, а потом, она также находит и пустые ячейки с форматом отличным от стандартного. С таким же и даже лучшим результатом можно использовать: Код: plaintext 1. 2. 3. 4. KL [MVP - Microsoft Excel]Не понял в чем привирает? В том, что дает не последний заполненный ряд, а первый пустой, наверное :). А на счет пустых ячеек с форматом, ...здесь я согласен с твоим высказыванием, что абсолютного способа повидимому нет. Инструмент должен соответсвовать задаче. Эта функция прекрасно подойдет для поиска конца конкретной колонки в таблице. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.09.2007, 23:29 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbaproНе понял в чем привирает? В том, что дает не последний заполненный ряд, а первый пустой, наверное :) Ну да! Ты ж ее назвал-то LastRow vbaproЭта функция прекрасно подойдет для поиска конца конкретной колонки в таблице. Ну я-то как раз считаю, что, для поиска конца конкретной колонки в таблице, End(xlUp) значительно лучше чем Do While... - короче в написании и быстрее в пересчете KL [MVP - Microsoft Excel] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2007, 00:14 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
KL (XL)Ну я-то как раз считаю, что, для поиска конца конкретной колонки в таблице, End(xlUp) значительно лучше чем Do While... - короче в написании и быстрее в пересчете KL [MVP - Microsoft Excel]...с учетом поста, с которого начался этот заход, что скрытые, в том числе фильтром, ячейки со значениями будут пропущены методом End(xlUp) и результатом будет не последяя заполненная, а последняя заполненная и нескрытая ячейка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2007, 08:36 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vbapro...с учетом поста, с которого начался этот заход, что скрытые, в том числе фильтром, ячейки со значениями будут пропущены методом End(xlUp) и результатом будет не последяя заполненная, а последняя заполненная и нескрытая ячейка. Упс, это я как-то упустил из виду :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2007, 09:31 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Помойму Вы просто подзабыли что END не учитывает скрытые стороки Во втором посте этой темы есть ссылка через которую можно найти это Поиск последней ячейки в Excel Функция от sergeyvg Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2007, 09:46 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
vkodorПомойму Вы просто подзабыли что END не учитывает скрытые стороки Во втором посте этой темы есть ссылка через которую можно найти это Поиск последней ячейки в Excel Функция от sergeyvg Код: plaintext Буквально 200-300 пустых строк в конце UsedRange дают серьёзную задержку, а запихнув это в цикл можно и подвесить комп. Если по этому пути идти, то лучше уж так Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2007, 11:02 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Deggasad, 15.09, 14:46 ..... Код: plaintext vbapro ...ведь это метод реализующий Ctrl+Up... А если нужна именно последняя строка - нужно фильтр сбрасывать, есть конечно определённое неудобство... может так подойдёт: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2007, 12:08 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
nPUBET может так подойдёт: Код: plaintext 1. 2. 3. 4. Это один из вариантов, минусы и плюсы которого обсуждались неоднократно на этом форуме, могёте почитать. Сейчас нет конкретной задачи, мы просто обсуждаем недостатки различных способов нахождения последней строки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2007, 13:11 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Доброго времени суток Позвольте прослыть некропостером и поставить конкретную задачу, а то от чтения сего топика только ещё больше запутался. Итак: Есть таблица с поставленным фильтром. После обновления данных макрос подставляет в фильтр нужные условия. После этого необходимо скопировать отфильтрованные данные в другую таблицу. И если фильтр не выбрал ни одного значения, копирование вываливается с ошибкой. Как проверить, отфильтровано ли хоть одно значение? Так как фильтр стоит во второй строке, то задача сводится к выяснению, является ли вторая строка последней видимой на листе? Чем из выше приведённого лучше воспользоваться? Заранее спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2011, 11:12 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Sub test() Debug.Print Intersect(ActiveSheet.UsedRange, Rows("2:" & Rows.Count)).SpecialCells(xlCellTypeVisible).EntireRow.Rows.Count End Sub ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2011, 11:27 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Нет, поторопился - так неправильно. Но в этом направлении можно идти... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2011, 11:35 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Так здесь как раз подойдет это: Код: plaintext 1. Код: plaintext 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2011, 11:42 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
Так вроде ОК Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2011, 11:50 |
|
||
|
Номер последней строки или столбца
|
|||
|---|---|---|---|
|
#18+
The_PristТак здесь как раз подойдет это: Код: plaintext 1. Код: plaintext 1. 2. 3. Спасибо, подходит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2011, 12:35 |
|
||
|
|

start [/forum/topic.php?all=1&fid=61&tid=2177075]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
186ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
94ms |
get tp. blocked users: |
2ms |
| others: | 233ms |
| total: | 563ms |

| 0 / 0 |
