Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.12.2010, 17:44   #1
SarahConner
Пользователь
 
Аватар для SarahConner
 
Регистрация: 03.01.2009
Сообщений: 32
По умолчанию выбрать из строк последние, идущие после ключевой строки

Всем привет и с наступающим НГ!
Появилась задачка, с которой не могу справиться, помогите, плз.

Из сторонней программы, обрабатывая текстовые файлы,
я получаю необходимые строки, с которыми мне нужно поработать.
Эти строки я вставляю в столбец Excel Ctrl+v, но все строки мне не нужны, а нужны только те, которые идут после последней строки с определенным ключем. Вопрос: как избавиться от неинтересующих строк, а оставить только те, что идут после последней ключевой строки включительно?

Пример таких строк:
таня пляшет танго
на гитаре играет вика
люба вяжет
вика пляшет танго
есть много веселых девушек
шьет таня
люба все еще вяжет
так много профессий
тяня хорошо готовит
теперь вика отдыхает
устала бедняжка
был тяжелый день


мне для работы нужны эти строки (последние в списке, начиная со строки, где есть ключ)
(здесь в качестве ключа слово "вика"):

теперь вика отдыхает
устала бедняжка
был тяжелый день


Спасибо отклткнувшимся.
I'll be back
SarahConner вне форума Ответить с цитированием
Старый 29.12.2010, 18:09   #2
shanemac51
Участник клуба
 
Аватар для shanemac51
 
Регистрация: 12.08.2010
Сообщений: 1,077
По умолчанию

вопросы по существу

-какая максимальная длина строки
-полный размер текстового файла
Имя-Галина== почта shanemac51@yandex.ru скайп shanemac51 c 8-15мск будни
Сфера интересов--word-excel-access-распознавание
shanemac51 вне форума Ответить с цитированием
Старый 29.12.2010, 18:20   #3
SarahConner
Пользователь
 
Аватар для SarahConner
 
Регистрация: 03.01.2009
Сообщений: 32
По умолчанию

а) длина менее 200 символов точно, 90% строк менее 50~70 символов.
б) размер тхт файла будет расти постепенно, т.е. количество строк будет увеличиваться, но для работы нужна последняя порция. максимальное количество строк в буфере будет около 5000.
I'll be back
SarahConner вне форума Ответить с цитированием
Старый 29.12.2010, 18:33   #4
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

обязательно использовать Excel?
можно с текстовыми файлами и без него работать

Вот пример: http://excelvba.ru/XL_Files/Sample__...__20-34-05.zip
(нажмите зеленую кнопку)

Код:
Sub test()
    Ключ = "вика"
    Dim Диапазон As Range, ПоследнееВхождение As Range
    Set ПоследнееВхождение = ActiveSheet.UsedRange.Find(Ключ, , xlValues, xlPart, , xlPrevious)
    Set Диапазон = Range(ПоследнееВхождение, Range("A" & Rows.Count).End(xlUp))
    Диапазон.Copy Диапазон.Offset(, 2) ' копируем результат вправо на 2 столбца
End Sub
EducatedFool вне форума Ответить с цитированием
Старый 29.12.2010, 20:20   #5
SarahConner
Пользователь
 
Аватар для SarahConner
 
Регистрация: 03.01.2009
Сообщений: 32
По умолчанию

Умница, спасибо,
привет всем уральским!!!

А можно последнюю рабочию часть скопировать ну скажем в начало следующего столбца, начиная с B1,
просто я этого пока не умею, а из-за того, что кол-во общих строк будет постоянно увеличиваться, то и скопированная на два столбца рабочая область будет также съезжать вниз.
Если подскажите, то будет вообще классно.
В любом случае огромное спасибо.
I'll be back
SarahConner вне форума Ответить с цитированием
Старый 29.12.2010, 20:51   #6
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

замените это:
Диапазон.Copy Диапазон.Offset(, 2)

на это:
Диапазон.Copy [b1]
EducatedFool вне форума Ответить с цитированием
Старый 29.12.2010, 20:54   #7
SarahConner
Пользователь
 
Аватар для SarahConner
 
Регистрация: 03.01.2009
Сообщений: 32
По умолчанию

а я всё перепробывала, а про квадратные скобки не подумала
классно, спасибо!!
I'll be back
SarahConner вне форума Ответить с цитированием
Старый 29.12.2010, 21:47   #8
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Цитата:
а я всё перепробывала, а про квадратные скобки не подумала
SarahConner, вы за пару лет успели сменить свой пол?

Помнится, в 2009-м вы были мальчиком))
Цитата:
Сообщение от SarahConner Посмотреть сообщение
Привет ВСЕ.
Решил освежить знания в программировании, нужно по долгу службы, но не хватает опыта. Сроки, мать их, всегда всё портят.
...
Буду рад любой помощи, если чего сумбурно написал, переспросите- поясню. Спасибо!
Цитата:
Сообщение от SarahConner Посмотреть сообщение
Вот что я наваял, правда с помощью друга, но и задача была расширена.
А сейчас, судя по ответам, - уже девочка. Чудеса, да и только)
EducatedFool вне форума Ответить с цитированием
Старый 29.12.2010, 22:42   #9
SarahConner
Пользователь
 
Аватар для SarahConner
 
Регистрация: 03.01.2009
Сообщений: 32
По умолчанию

как говорил наш преподователь универа, (где мы с мужем и познакомились), по дисциплине "информационные системы", г-н Лабунец:
"чудес на свете не бывает", "взялся за грудь, так скажи что-нибудь", ну и прочие вещи с упором на ненорматив.
У нас с мужем общая почта@mail.ru, акки на разных форумах, недвижимость и движимость, собака и ... ребенок.

Прикольно, что вы занимаетесь разоблачением.
Может это чисто профессианальное, в любом случае, спасибо за помощь и с наступающим
I'll be back
SarahConner вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выбрать из строки и распределить по столбцам Crystal78 Microsoft Office Excel 4 25.12.2010 23:00
Идущие часы ArtJuhn JavaScript, Ajax 5 12.11.2010 21:25
Дбавление новой строки, после строки с подходящими параметрами RailOS Microsoft Office Excel 5 18.08.2010 10:12
Какой язык лучше всего выбрать после завершения изучения языка Паскаль. VektorAB Помощь студентам 4 09.07.2010 07:16
Выбрать инициалы из строки Swatch Microsoft Office Access 3 02.03.2010 20:29