Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Скрипт, фиксирующий летопись изменений в таблице
 
Дайте ссылку на правила этого раздела. В общих правилах работы форума ничего предосудительного не увидел в своих действиях.
Скрипт, фиксирующий летопись изменений в таблице
 
Это кто решает здесь кому рано, а кому нет?
Критерии по подробнее.
Изменено: Vitaliy Ptashnik - 29.07.2021 11:28:43
Скрипт, фиксирующий летопись изменений в таблице
 
Отписал предложение  в личку.
Залить разные диапазоны в разные массивы (VBA).
 
Цитата
Юрий М написал:
Но всё же нужно чётко понимать конечную цель
Добрый день!

Конечная цель - это обработка частей диапазона на других листах в зависимости от критериев выборки в исходном диапазоне обработки. Если работать сугубо с объектом Range - выполнение выходит достаточно длительным. Другое дело - обрабатывать данные через объявление массива. Процедура значительно быстрее отрабатывает. Собственно говоря, я по этому пути и пошел придя к этому варианту в процессе обсуждения на форуме. Учитывая тот факт, что обрабатываемый массив будет до 300позиций - то такое исполнение удовлетворяет текущую потребность по скорости выполнения.
Изменено: Vitaliy Ptashnik - 08.07.2019 11:28:55
Залить разные диапазоны в разные массивы (VBA).
 
Добрый день!
Цитата
Sanja написал:
Ваша уверенность в этом опровергает Ваше же Цитата Vitaliy Ptashnik  написал: Нет опыта работы с массивами в VBA.
Уточню, нет "достаточного" опыта работы чтоб прийти к соответствующему заключению.
Цитата
Sanja написал:
Массив обрабатывается не зависимо от листов
Пришел к этому выводу в процессе обсуждения, так как сначала был слишком увлечен идеей с наполнением нескольких массивов. Попробую выполнить обработку единого массива по условиям на разных листах.

Как показал опыт всех участников обсуждения этой темы - наполнение нескольких массивов по условиям с одного диапазона таки возможно. Варианты  #6, #11, #13  отрабатывают хоть и с оговорками. В любом случае, идеи предоставлены с Вашей стороны дают повод к дальнейшей самостоятельной работе в данном направлении. Всем участникам форума выражаю глубокую признательность и благодарность за уделенное время и затраченные усилия.  
Изменено: Vitaliy Ptashnik - 06.07.2019 12:56:13
Залить разные диапазоны в разные массивы (VBA).
 
Завтра утром сопоставлю все варианты решения и напишу заключение или замечания по вышеперечисленным комментариям.
На сегодня всем спасибо, должен покинуть чат.
Залить разные диапазоны в разные массивы (VBA).
 
RAN,  то что нужно. Спасибо огромное! Если будут еще варианты буду рад рассмотреть!
Залить разные диапазоны в разные массивы (VBA).
 
Цитата
vikttur написал:
Но можно же обрабатывать для разных листов разные записи массива.
Можно если постараться.

Но, мне кажется, правильнее будет сначала сформировать нужную выборку данных (массив) и затем подвергать ее обработке.
Сформированный массив ArrOrdsMM (диапазоны: A1:I1;A3:I3;A5:I5;A7:I7;A9:I9;A11:I11) нужно будет вставить и обработать на определенном листе.
Сформированный массив ArrPB (диапазоны: C2:E2;C4:E4;C6:E6;C8:E8;C10:E10;C12:E12) также нужно будет вставить и обработать на другом листе.

Цитата
vikttur написал: Или Вы хотите заполнять массив по условию - или одним диапазоном. или другим?
Нет, выборка по первому условию строго для первого массива(ArrOrdsMM), по второму условию - для второго массива (ArrPB)
Залить разные диапазоны в разные массивы (VBA).
 
Нет, бывают случаи последовательного расположения строки 1,3,5,7 и т.д. - потому записал условие в цикле. Вообще, это будет фрагментарная обработка по выделению диапазона, но я не стал это примешивать, да бы не вносить дополнительного смысла в код. Предполагается, также, на будущее с помощью условия в цикле формировать выборку и по другим признакам, но, опять же, это не так важно как то как понять способ наполнения массива выборочными диапазонами по условию.    
Залить разные диапазоны в разные массивы (VBA).
 
Нет, так не подходит. Данные из первого массива будут обрабатываться в последующем на одном листе, а со второго на другом листе.
Залить разные диапазоны в разные массивы (VBA).
 
Всем привет!

Нет опыта работы с массивами в VBA. Нужно залить выборочные диапазоны по условию в массив 1 и массив 2 в зависимости от условия (прописано в процедуре).
Предполагается, что набор диапазонов будет разным поэтому объявлен динамический массив, но каждый новый диапазон затирает значения предыдущего в массиве при последующей итерации в цикле. Как этого избежать и наполнить массив без потери данных? Теория гласит что нужно изменять размер массивов через ReDim - реализовать практически не получилось, help plz!  
Разделение значений текстовых строк на части по Маске (VBA)
 
Спасибо, всем!
Разделение значений текстовых строк на части по Маске (VBA)
 
Ошибка в результате, диапазон M6:N6, а так безупречно.
Разделение значений текстовых строк на части по Маске (VBA)
 
Попробую чего-нибудь на яндекс-кошелек закинуть. Привет с Украины!
Разделение значений текстовых строк на части по Маске (VBA)
 
Добрый день! На листе во вложенной книге в столбце "W" размещены текстовые данные которые поступают по Маске 1. Эти данные необходимо разделить на части согласно Маске 2. Был разработан макрос (возможно, не самый оптимальный) который выполняет указанную операцию не совсем корректно. Суть ошибочного разделение также отображена на листе во вложенной книге.
Помогите, плз, довести макрос до кондиций.
 
Изменено: Vitaliy Ptashnik - 03.07.2019 11:15:45
Фильтрация таблицы данных с помощью макроса.
 
Спасибо, все отработало. Ошибка была в том, что не было конвертации вводимых значений даты с типа данных "Date" в математический тип "Double". Еще раз спасибо за наводку.  
Изменено: Vitaliy Ptashnik - 25.11.2018 18:23:25
Фильтрация таблицы данных с помощью макроса.
 
Нужна помощь в реализации макроса. Во вложении предоставлены наброски макроса. Он не срабатывает, не могу понять почему, очень малый опыт в VBA. Фильтрацию данных (по столбцу Дата З) нужно реализовать через встроенный инструмент автофильтра, но с применением диалоговых окон (inputbox) для ввода диапазона дат. После ввода необходимого диапазона дат через диалоговое окно - дальнейшая обработка введенных дат в коде не осуществляется.  
Изменено: Vitaliy Ptashnik - 25.11.2018 17:39:36
Распределение сделок из массива по контрактам.
 
Отправил на почту.
Распределение сделок из массива по контрактам.
 
Добрый день!

Нужно настроить автоматическую подвязку сделок из массива по контрактам по специальным артикулам (по мере наполнения). Уже проведена значительная работа и попытки настройки автоматической подвязки с помощью "трехэтажных формул" и макросов, но цель не достигнута. Загрузить файл нет возможности так как он очень большой. Если кто возьмет в работу - отправлю на почту.
Изменено: Vitaliy Ptashnik - 19.12.2017 16:42:55
Распределение сделок из массива по контрактам
 
Ну нет - так нет. Это действительно трудно объяснить, придется очень-очень много писать, я Вас понимаю.
Распределение сделок из массива по контрактам
 
Жуть, потому что нельзя разместить файл нормального размера там все логично понятно, где что и как. Могу бросить на почту...  
Распределение сделок из массива по контрактам
 
Поправил.
Распределение сделок из массива по контрактам
 
Добрый день!

Нужно настроить автоматическую подвязку сделок из массива по контрактам по специальным артикулам (по мере наполнения). Уже проведена значительная работа и попытки настройки автоматической подтяжки с помощью "трехэтажных формул" и макросов, но цель не достигнута.

Файл во вложении пришлось очень сжать чтоб влезть в действующий лимит.  

Предпоссылки к информации в файле:
1. Существует массив данных по сделкам (Лист "Массив#").
2. Существует массив контрактов (лист "ММК"). На данном листе в диапазоне D2:BA181 выполнено распределение сделок по менеджерам и по артикулам для МК_1, МК_2, МК_(n). Итого свод по распределению отражен в диапазоне BC2:BC181.  
3. Листы контрактов "МК_1, _МК_2" (в перспективе таких контрактов будет больше и листов соответственно) завязаны на распределение  в диапазоне BC2:BC181 на листе "ММК".

Нужно: чтоб на листах  "МК_1, _МК_2, МК_(n)" подтягивались сделки из массива (Лист "Массив#") по распределению которое указано в диапазоне B3:H8. На данный момент сделки подтягиваются в столбцах Q:U. Но, нужно чтоб сделки при подтягивании не дублировались по контрактам, а заполнялись по мере наполнения предыдущих контрактов.        
Изменено: Vitaliy Ptashnik - 18.12.2017 00:41:14
Извлечение артикулов из кода Договора
 
Добрый вечер всем!

Все работает: и макрос и макрофункция. Макрофункция - наиболее оптимальное, можно сказать идеальное решение.
Уважаемые специалисты данного форума!
Я от всей души хочу поблагодарить всех неравнодушных и принявший участие в решении этой непростой задачи, а также хочу попросить прощение за то, что изначально предоставил файл с нарушением структуры, нарушив при этом правила форума и забрав драгоценное время у многих, простите меня!  
Извлечение артикулов из кода Договора
 
Файлы, которые я загружал весят не более 100Кб, не понял, к чему это замечание.
И потом, я не так часто бываю на данном форуме, чтоб знать абсолютно все тонкости, думаю ничего криминально не сделал.
Не тратьте впустую время, спасибо всем.  
Извлечение артикулов из кода Договора
 
Никто не мешал, думал если автоматическую выборку можно будет настроить через формулы, тогда нужно будет просто переподтянуть ссылки на нужные ячейки.  
Извлечение артикулов из кода Договора
 
Да, макрос работает, проверил.
Но, реальное размещение данных на листе по факту происходит со сдвигом на одну строку вниз и на один столбец вправо - тогда уже не работает, отобразил во вложении. Это можно как-то поправить?
Изменено: Vitaliy Ptashnik - 08.12.2017 12:04:35
Извлечение артикулов из кода Договора
 
Макрос выдает синтаксическую ошибку в самой первой строке.
Извлечение артикулов из кода Договора
 
vikttur если поставить в начале двухзначное число - то уже неточно срабатывает. Детали во вложении.
Извлечение артикулов из кода Договора
 
vikttur гениально. И нет так грузят файл как формулы массива. Реализация через формулы массива - тоже очень хороша.
Всем кто откликнулся выражаю глубокую благодарность и признательность, спасибо!      
Страницы: 1 2 След.
Наверх