Форум по VBA, Excel и Word

VBA, Excel => VBA, макросы в Excel => Тема начата: Вероника от 01 марта 2015, 20:08

Название: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 01 марта 2015, 20:08
Здравствуйте! Возможно ли в Эксель: автоматическое удаление одной строки в таблице (самой первой), при появлении новой (нижней)?
Если да, подскажите пожалуйста как это реализовать.
И если можно, поэтапно разжевать.
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 01 марта 2015, 20:14
Вероника, вставьте в сообщение файл. Если в файле секретные данные, то замените данные.
Я предлагаю решение с помощью макросов. Если Вы макросы не знаете, то будет сложно понять.
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 01 марта 2015, 20:19
Вот.

[вложение удалено администратором]
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 01 марта 2015, 20:27
Вероника,
1) когда в строке 23 появятся новые данные, должна удалиться строка 4, данные поднимутся вверх на одну строку. Так должно быть?
2) кто вводит данные в строку 23: пользователь (человек) или, например, какая-то программа?
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 01 марта 2015, 20:54
1) да
2) данные автоматически должны появляться с сайта цб рф (уже это реализовано).
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 01 марта 2015, 20:59
Вероника, у Вас в файле есть подключение к сайту. Но данные вставляются не в одну строку, а в строки 4:22.
А Вы задаёте вопрос про одну последнюю строку. Как это состыковать?
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 01 марта 2015, 21:23
Правильно. Данные вставлены пока что с А4 по 22, в понедельник же появится 23 строка.
Мне вот нужно чтобы, когда появится А23 (строка), удалилась А4 (строка).
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 01 марта 2015, 21:55
Вероника, опишите, какие действия Вы делаете на сайте во время создания подключения.
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 01 марта 2015, 21:58
Вероника, запрос в подключении Вы сами создавали, например, параметры date_req1 и date_req2?
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 01 марта 2015, 23:18
Изменил запрос: теперь в него передаётся две даты: начальная дата и конечная дата.
Подходит Вам такое решение Вашей задачи?

[вложение удалено администратором]
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 02 марта 2015, 03:12
То что я просила, у вас не получилось: вы только из таблицы 6 первых строк удалили и все. Больше ничего не изменилось.
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 02 марта 2015, 07:40
1) Вероника, вообще, смысл Вашей задачи: отображать на excel-листе данные за какой-то период? Например, данные за неделю, за месяц?

Может быть нет смысла усложнять, удаляя строку 4? Ведь Вам же главное данные за какой-то период?
Зачем Вам надо, чтобы на excel-листе были данные именно в строках 4:22?

2) Я не удалял в excel-файле строки, а я изменил запрос: теперь данные берутся не с 1.02.2015, а с даты, указанной в ячейке G1. Можно скорректировать дату в ячейке G1, чтобы выдавались данные за другой период времени.
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 02 марта 2015, 14:21
Данные в таблице экселя должны быть за последние 25 или 30 дней. И когда появляются данные за 26 или 30 день, то удаляется начальная (первая) строка.
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 02 марта 2015, 14:46
Вероника, если в ячейке G1 скорректировать данные: вместо -18 указать другое число. например, -30. Не подходит Вам такое?
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 02 марта 2015, 15:02
Я это сделала сейчас. Добавились значения.
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 02 марта 2015, 15:06
Подходит Вам такое решение?
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Вероника от 02 марта 2015, 15:09
Автоматическое удаление строки реализовано (первоначальное задание)?
Название: Re: Автоматическое удаление самой первой строки при появлении новой нижней
Отправлено: Администратор от 02 марта 2015, 15:14
Смысл решения, которое я предлагаю, такой.
Например, сегодня данные будут браться со 2.02.2015 - 30 дней до 2.02.2015.
Завтра: с 3.02.2015 - 30 дней до 3.02.2015
И т.д.

То есть данные, которые находятся в строке 4, будут меняться.