Форум программистов
 
Регистрация на форуме тут, о проблемах пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail, а тут можно восстановить пароль

Купить рекламу на форуме 15-35 тыс рублей в месяц

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

           Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
           И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - https://clck.ru/fCqwP

Ответ
 
Опции темы Поиск в этой теме
Старый 13.10.2009, 10:57   #1
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,806
По умолчанию Как найти последнюю строку Листа?

Сейчас побыстренькому нужно нагромоздить одну программулину. Даже времени нет чтоб яндекс погуглить.

Смысл части ее в том чтоб скидывать в XLS книгу отчет о некотором действии, на некоторый лист.
Так вот информацию нужно дописывать в конец листа. Вручную это делается переходом по CTRL+END клавише.

А как это сделать программно? Как на VBA определить какая строка последняя и получить ее номер или Range?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.10.2009, 11:07   #2
analyst
Пользователь
 
Регистрация: 30.06.2009
Сообщений: 32
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А как это сделать программно?
Код:
ActiveCell.SpecialCells(xlLastCell).select
x=Activecell.row
analyst вне форума Ответить с цитированием
Старый 13.10.2009, 13:21   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,853
По умолчанию

Код:
Sub test()
' определяем последнюю заполненную ячейку в столбце А
' и смещаемся на одну ячейку вниз, чтобы получить незаполненную ячейку
    Dim ra As Range
    Set ra = Range("A" & Rows.Count).End(xlUp).Offset(1)
    ra = "текст"
End Sub
Есть нюансы: если все ячейки столбца уже заполнены (или заполнена последняя ячейка в столбце), либо в столбце нет ни одной заполненной ячейки, указанный способ вернёт не ту ячейку (к примеру, ячейку A2)

Последний раз редактировалось EducatedFool; 13.10.2009 в 13:24.
EducatedFool вне форума Ответить с цитированием
Старый 13.10.2009, 13:41   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,806
По умолчанию

Хм... Данке шон, господа.
Приму во внимание оба примера.
Цитата:
Есть нюансы:
Не страшно, особая точность сврху не важна, главное чтоб снизу дописывало, а пропущенная верхняя строка чепуха
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 13.10.2009, 14:01   #5
king13
Пользователь
 
Регистрация: 26.09.2009
Сообщений: 20
По умолчанию

Цитата:
Сообщение от EducatedFool Посмотреть сообщение
Код:
Sub test()
' определяем последнюю заполненную ячейку в столбце А
' и смещаемся на одну ячейку вниз, чтобы получить незаполненную ячейку
    Dim ra As Range
    Set ra = Range("A" & Rows.Count).End(xlUp).Offset(1)
    ra = "текст"
End Sub
Есть нюансы: если все ячейки столбца уже заполнены (или заполнена последняя ячейка в столбце), либо в столбце нет ни одной заполненной ячейки, указанный способ вернёт не ту ячейку (к примеру, ячейку A2)
Здавствуйте EducatedFool не подскажите как сделать чтобы в ту ячейку не писалось слово "текст", а ячейка была активной, как к примеру по Selection.End(xlDown).Select и перейти на следующую пустую строку.
king13 вне форума Ответить с цитированием
Старый 13.10.2009, 14:22   #6
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,853
По умолчанию

Цитата:
Сообщение от king13 Посмотреть сообщение
Здавствуйте EducatedFool не подскажите как сделать чтобы в ту ячейку не писалось слово "текст", а ячейка была активной, как к примеру по Selection.End(xlDown).Select и перейти на следующую пустую строку.
Код:
Sub test()
   Range("A" & Rows.Count).End(xlUp).Offset(1).Select
End Sub
EducatedFool вне форума Ответить с цитированием
Старый 13.10.2009, 14:33   #7
king13
Пользователь
 
Регистрация: 26.09.2009
Сообщений: 20
По умолчанию

Спасибо большое EducatedFool
king13 вне форума Ответить с цитированием
Ответ

           Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
           Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как найти последнюю запись в таблице? dsapa Microsoft Office Excel 2 21.07.2009 16:37
Удалить последнюю строку из файла Flame_of_Death Помощь студентам 6 21.07.2009 13:48
Найти последнюю цифру числа в С++ Vizavi Помощь студентам 4 27.05.2009 21:24
Найти последнюю цифру от числа в Паскале Карабин Помощь студентам 100 17.05.2009 17:34
организация поиска - не ищет последнюю строку в StringGrid Xeon332 Общие вопросы Delphi 5 13.11.2008 04:36