|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
16.11.2010, 15:51 | #1 |
Пользователь
Регистрация: 26.10.2010
Сообщений: 32
|
Копировать строку фильтрованного списка в другую книгу, на последнюю пустую строку
Помогите написать макрос
Происходит постоянный импорт данных Из отфильтрованного массива данных необходимо скопировать все строки (кроме заголовка) в отдельную Книгу на последнюю пустую строку. Исходный фаил: Альфа-директ Конечный Файл: Журнал учёта маржи Помогите пожалуйста! |
16.11.2010, 18:16 | #2 |
Форумчанин
Регистрация: 06.08.2009
Сообщений: 472
|
можно так,
Код:
|
17.11.2010, 10:59 | #3 | |
Пользователь
Регистрация: 26.10.2010
Сообщений: 32
|
Цитата:
а можно немного подкорректировать и копировать данные в файл "Журнал учёта маржи" следующим образом: в ячейке столбца "дата" вставлять текущую дату копирования, в ячейке столбца время вставлять текущее время копирования, портфель, ФИО, и уровень маржи брать из файла Альфа-Директ как по предыдущему макросу, а в ячейке примечание всегда вставлять "принято к сведению" ?????? В приложенном файле есть как раз это форма куда нужно копировать. Поможете? |
|
17.11.2010, 14:06 | #4 |
Форумчанин
Регистрация: 06.08.2009
Сообщений: 472
|
см. вложение
В файле "Альфа-директ" на "Лист1" запустите макрос "Find_Copy". Файл "ЖУРНАЛ УЧЕТА.xls" должен находится в одной папке с файлом "Альфа-директ". Последний раз редактировалось EugeneS; 17.11.2010 в 14:58. |
18.11.2010, 12:34 | #5 | |
Пользователь
Регистрация: 26.10.2010
Сообщений: 32
|
Цитата:
А можем ещё усложнить задачу? 1)Можно убрать бокс с сообщением "нет клиентов с маржой ниже 35%"? Хочу поставить автозапуск макроса через каждые 30 сек, т.е. если клиентов нет, пусть продолжается дальнейшее изменение листа. как я понимаю функция Application.ScreenUpdating = False блокирует внешний импорт. 2)Можно ли сделать форматирование так, чтобы пропуск строки в файле ЖУРНАЛ УЧЁТА шёл только после каждого дня, а не после каждого запуска макроса? Т.е. вылетевшие клиенты с маржой в итоге добовлялись к текущему дню, либо шёл пропуск строки и начинался новый день 3) Самое наверное сложное. Можно ли сделать так, что бы "выпадавший" клиент копировался в день только один раз в "Журнал учёта маржи" Это связанно с тем, что я потом прикручу макрос автоматической отправки сообщения на мыло через Outlook. А посылать клиенту в день по 20 сообщений будет неправильно. Я вам благодарен! Не сочтите за наглость=) Помогите если есть время и желание |
|
18.11.2010, 17:57 | #6 |
Форумчанин
Регистрация: 06.08.2009
Сообщений: 472
|
см. вложение
Исходя из того, что файл "ЖУРНАЛ УЧЕТА.xls" будет обновляться несколько раз в минуту, целесообразно держать его открытым. Макрос проверяет открыта ли книга "ЖУРНАЛ УЧЕТА.xls" и, если нет, открывает её и по окончании сохраняет не закрывая. Если же книга "ЖУРНАЛ УЧЕТА.xls" будет открыта изначально, макрос просто быстрее выполнится. Книга "ЖУРНАЛ УЧЕТА.xls" должна будет находится с книгой "Альфа-директ.xls" в одной папке. |
19.11.2010, 10:44 | #7 | |
Пользователь
Регистрация: 26.10.2010
Сообщений: 32
|
Цитата:
Он сработал, сделал своё дело, но в конце вышел бокс с сообщением: "Книга Журнал учёта не найдена в одной папке с Альфа директ" т.е. макрос работал, но в конце всегда выводил это сообщение будь то файлы в папке result, на рабочем столе или в любой другой папке Далее я подчистил "Журнал учёта" (удалил ненужные листы, и переименовал нужные). Переименовал "Лист 1" куда идёт копирование в "2010", потом заменил это в коде: On Error GoTo handler: With Workbooks("ЖУРНАЛ УЧЕТА.xls").Sheets("2010") Запустил макрос и теперь он ничего не делает а просто выводит плашку "Книга Журнал учёта не найдена в одной папке с Альфа директ" Прикрепляю конечную версию "Журнала" и сам "Альфа-директ" Посмотрите пожалуйста. |
|
19.11.2010, 11:37 | #8 |
Форумчанин
Регистрация: 06.08.2009
Сообщений: 472
|
исправил, проверяйте
|
19.11.2010, 16:06 | #9 |
Заблокирован
Регистрация: 06.11.2010
Сообщений: 5
|
Копировать строку фильтрованного списка в другую книгу на последнюю пустую строку
Идея такая была:
Вызываю iewebbrowser->NavigateURL; после чего нужно на его событие NavigateComplete когда ввсе загрузилось подождать 5 сек чтобы можно было посмотреть на страницу, потом опять вызывать NavigateURL; и так несколько раз. Как можно реализовать? |
22.11.2010, 11:08 | #10 |
Пользователь
Регистрация: 26.10.2010
Сообщений: 32
|
Посмотрите код, ещё раз пожалуйста, что-то не идёт
Последние файлы... |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Удалить пустую строку созданную StringList-ом | Shouldercannon | Общие вопросы Delphi | 18 | 14.12.2011 11:52 |
Как выбрать последный пустую строку в LISTBOX ? | Aqil_f | Microsoft Office Excel | 14 | 06.09.2010 18:00 |
Как считать последнюю строку ? | Katmai | Общие вопросы Delphi | 13 | 27.07.2010 20:49 |
Преобразование даты в пустую строку | insense | БД в Delphi | 6 | 02.07.2010 09:13 |
Удалить пустую строку из ListView | Shouldercannon | Общие вопросы Delphi | 2 | 28.04.2010 16:02 |