Коллеги предположение оказалось верным, действительно ключ, который был необходим для копирования рассчитывался по формуле, а так как расчет формул в начале макроса был отключен для оптимизации, то он и не обновлялся при новой загрузке, что привело к ошибке. Всем спасибо! Ура! =)
Некорректная работа цикла в цикле
Некорректная работа цикла в цикле
06.04.2016 16:51:20
Прошу прощения, замечание обоснованно
Ошибка наиболее вероятна в коде "Application.Calculation = xlCalculationManual", при включении автоматического пересчета, все работает корректно. Скорее всего ключ не обновляется формулой, думаю причина в этом =)
Изменено: |
|
|
Некорректная работа цикла в цикле
Некорректная работа цикла в цикле
Некорректная работа цикла в цикле
Некорректная работа цикла в цикле
06.04.2016 12:34:16
Добрый день форумчани!
Помогите пожалуйста разобраться с работой циклов. Бьюсь второй день(. Суть вопроса: Есть 2 цикла, основной и вспомогательный, внутри основного. Основной пробегает по строкам исходной таблицы забирая составной ключ по которому должны копироваться данные из вспомогательной таблицы (она создается на основе основной на предыдущем "этапе"). Вспомогательный цикл призван проверить наличие ключа во всех строчках вспомогательной таблицы (порядок строк разный в 2 таблицах), и если ключ найден, то копирует основные значения табличной части в основную таблицу, если нет, оставляет поля по новому ключу пустыми (доступными для заполнения). Ключ копируется из внешнего источника ХД через одноименный лист. Проблема: Когда устанавливаю чек поинт и делаю отладку по шагам, все отрабатывает корректно, но когда запускаю макрос (проблемная часть с 181 строки кода), копирование происходит без выполнения логических условий проверки ключа, тупо подряд строки из временной таблица в основную копируются. В файле с примером целевой вид после выполнение макроса на листе "Ввод данных_Целевой", то, что получается сейчас при запуске на листе "Ввод данных_Ложный". Помогите разобраться, почему так отрабатывает макрос при обычном запуске, в то время, как при отладке по шагам, все работает корректно? Файл с примером Password - 123
Изменено: |
|
|
Копирование диапазона, адрес которого задан с переменной, Копирование диапазона, адрес которого задан с переменной
Копирование диапазона, адрес которого задан с переменной, Копирование диапазона, адрес которого задан с переменной
04.04.2016 19:24:25
Коллеги, прошу помощи.
Необходимо скопировать циклом по строкам диапазон таблицы из "временного" листа в "постоянный" при выполнении конкретного условия. Диапазон по столбцам разрывают формулы, поэтому возможно придется делать несколько диапазонов на одну строку или может какой-то более удобный вариант, для примера взял первый диапазон с 6 по 8 столбец, в 9 идет первая формула, потом снова диапазон для копирования с 10 столбца по 15 например. Условие, это совпадение на двух листах конкатенаций из 3 уникальных аналитик, т.е. если они совпали, то копируем указанный диапазон из одного листа в другой. Структура листов идентична по набору столбцов. Макрос при запуске ругается на функцию копирования. Общий смысл примерно такой: Есть лист, куда прилетают много значений из ХД, эти значения идут в разрезе 3 уникальных полей (Структура_Должность_Сотрудник), далее эти данные копируются на пользовательский лист "Ввод данных", в котором заносят недостающие цифры. Может возникнуть такая ситуация, когда обновились данные в ХД, например добавился новый сотрудник и встает вопрос как подкачать новые значения не потеряв старые (структура строк ломается), уже внесенные пользователем. Самый простой способ, который я придумал, это скопировать уже заполненные данные во временный лист, затем вставить обновленные данные из ХД и по ключу вернуть ранее заполненный цифры из временного листа обратно. На последнем этапе я пока и завис из-за того, что не знаю как грамотно скопировать диапазон между листами.(Опыт в VBA не большой) Буду благодарен полезному совету, заранее спасибо! Ссылка на файл с таблицей.
|
|||
|
Совместный доступ: ошибка загрузки данных макросом из хранилища БД
Совместный доступ: ошибка загрузки данных макросом из хранилища БД
29.01.2016 12:26:00
(Н) – НевозможноЖ (В) – Варианты 1. (Н) Создание, запись, изменение, просмотр или назначение макросов. (В) Можно запускать существующие макросы, не связанные с недоступными функциями. Можно записывать действия общей книги в макрос, хранящийся в книге, к которой отсутствует общий доступ. 2. (Н) Защита листов и книг и снятие защиты (В) Существующая защита остается в силе. Правда не понял момент связанный с "Можно записывать действия общей книги в макрос, хранящийся в книге, к которой отсутствует общий доступ.". Может можно как-то использовать это в моем случае, что значит макрос в книге, к которой отсутствует общий доступ?
Изменено: |
|||
|
Совместный доступ: ошибка загрузки данных макросом из хранилища БД
29.01.2016 11:46:47
|
|||
|
Совместный доступ: ошибка загрузки данных макросом из хранилища БД
29.01.2016 11:40:20
Суть проблемы: На локальном сервере есть файл Excel с возможностью совместного пользования. Одна часть листов файла заполняется пользователями, другая только макросом из хранилища БД. При этом те данные которые заполняются из хранилища являются справочной информацией и пользователь не должен иметь возможность править\ изменять эти листы. Соответственно когда запускается макрос для загрузки данных из ХД появляется ошибка, макрос не может записать информацию в ячейки, которые закрыта для редактирования пользователями в режиме совместного использования. Задача: Загрузить необходимые данные из хранилища таким образом, чтобы пользователи имели возможность просмотра этой информации без редактирования, при этом важное условие, чтобы книга была в совместном доступе, так как есть листы, в которые рулями тянется информация с листов заполненных макрасом и пользователи вносят в эти листы данные. Чтобы было понятнее, приведу пример: макрасом из ХД формируются справочники (Сотрудник,Подразделение,Должность) на отдельных листах, потом информация правилами внутри книги подтягивается в итоговую сводную таблицу, в которой пользователи вносят данные в режиме совместного доступа. Возможно такое реализовать без сильных потерь в функционале?
Изменено: |
|
|
Совместный доступ с возможностью одновременного редактирования.
28.01.2016 20:19:52
Коллеги, прошу помощи! Увидел похожую тему, решил написать сюда, если нужно открывать новую тему, прошу прощения.
Суть проблемы: На локальном сервере есть файл Excel с возможностью совместного пользования.Часть листов файла заполняется пользователями, часть макросом из хранилища БД. При этом те данные которые подтягиваются из хранилища являются необходимой справочной информацией и пользователь не должен иметь возможность править эти листы. Соответственно когда запускается макрос для загрузки данных из ХД появляется ошибка, так как на листах стоит защита от пользователя. Прошу опытные головы, откликнитесь))!
Изменено: |
|
|