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

Страницы: 1
Работа: перевод ссылок в текстовый формат, работа с файлами воспроизведение ссылок
 
Спасибо большое asesja, все порядочно сделал
Сейчас будем пробовать осилить 2 этап, оптимизировать старый макрос :)
Работа: перевод ссылок в текстовый формат, работа с файлами воспроизведение ссылок
 
Не много попробую более точно и просто сформулировать
Есть файл 2 исходные данные
Есть файл 1, там ссылки на файл 2
Необходимо в третьем файле сформировать ссылки в виде начало (строка, столбец) и конец (строка, столбец)

Ссылка может быть 1 ячейка Файла 1 = 1 ячейка Файла 2
1 ячейка Файла 1 = 1 ячейка файла 2 + 1 ячейка Файла 2 (для этого используется дополнительная таблица, в файле результат столбцы H:M)
Всего может быть только вариант 1 к 1 или 2 к 1 (сумма)
Изменено: Mikhail Mad - 08.09.2023 16:58:02
Работа: перевод ссылок в текстовый формат, работа с файлами воспроизведение ссылок
 
Коллеги, добрый день, владею VBA, но на достаточно базового уровне, нужна платная помощь экспертов в написании макроса

Необходимо на первом этапе выполнить достаточно не сложную задачу
Есть два файла, 2 ссылается на первый, необходимо выдернуть все ссылки в заданном формате (при этом могут встречаться ссылки по типу [Файл_1.xlsx]Balance'!B5 + [Файл_1.xlsx]Balance'!C5 (строго ограничено не более 2х) необходимо разделить тогда их на 2 разные составляющие

Кратко, что из себя в целом представляет работа
Есть наборка файлов около 100 которые были утверждены в разных версиях (версии известны), допустим 1.1, 1.2, 1.13. И есть актуальная версия шаблона 3.0
Версии отличаются тем, что там по разному диапазоны вставляют, в том числе на разные листы. Есть файл который завязан с 3.0 на версию 1.13, с 3.0 завязан на 1.1 итп, нужно по его подобию чтобы файлы перестроились в новую версию (по шаблону связи 3.0 и 1.13)

Что сейчас есть:
У меня есть макрос (написан был коллегой ранее, и мне кажется не совсем оптимален с точки зрения производительности) он по заданному диапазону, страницы с файла версии 1.1 переставляет в заданный диапазон, страницу версии 3.0 перебирая все файлы. Пока нету необходимости перебирать данный макрос. Поэтому я бы предложил его в качестве работы во второй этап.

Необходимо сделать:
Нужен макрос, который может выдернуть все ссылки из файла 2 на файл 1 и упорядочить их на листе, чтобы можно было передать на вход работу макросу 2 (который есть и работает)
В качестве примера прикрепил виденье работы макроса. Есть Файл_1 с данными, есть файл_2 с ссылками на Файл_1, необходимо собрать данные в файл Result
Calculate диапазонов (столбцов) с разных листов, пересчет столбцов с разных листов
 
Цитата
написал:
Цитата
Mikhail Mad написал:
выделенные столбцы листов пересчитывались синхронно
нереально. Все вычисления производятся по цепочке зависимостей, которая хранится в файле. Эту цепочку Excel определяет сам и отменить пересчет какой-то части этой цепочки невозможно, если от неё зависит результат рассчитываемой в данный момент формулы.
Не отменить, а наоборот пробежаться полностью по этой цепочке зависимости

Сейчас используя структуру    
   Лист1.Columns(2).Calculate
   Лист2.Columns(2).Calculate
   Лист3.Columns(2).Calculate
я нарушил эту последовательность

Вопрос в том можно ли как-то сделать Union диапазонов с разных листов и попросить сделать calculate с выстраиванием всей цепочки самому Excel?

2 Jack Famous
Спасибо большое за ответ, да, в целом в моих разбираться есть смысл в платном разделе (в целом готов), если есть решения приведенного типового примера средствами Excel
Calculate диапазонов (столбцов) с разных листов, пересчет столбцов с разных листов
 
Добрый день, коллеги, давно читаю форум, но всегда находил решения... Сейчас к сожалению не смог, решил зарегится и задать гуру и экспертам

достаточно близкая тематика https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=145287&a...
но не совсем то

Суть проблемы:

Есть листы 1, 2, 3, Столбец А ввод данных.
Включен ручной пересчет
Необходимо выполнить расчеты в столбце B на листах 1,2,3. Но некоторые формулы столбца B на листе 1 ссылаются на B листов 2,3, Столбец B на листе 2 ссылается на столбец B листов 1,3 и т.д. при этом тут нету цикличности расчетов (в приложенном файле более наглядно)

Необходимо пересчитать столбец B на листах 1,2,3 таким образом, чтобы был не последовательный пересчет типа

    Лист1.Columns(2).Calculate
    Лист2.Columns(2).Calculate
    Лист2.Columns(2).Calculate

Хочется сделать что-то вроде
   Columns("B:B").Select
   Sheets(Array("Metal_1", "Metal_2, "Metal_3")).Select
   Selection.Calculate

Использование последовательного пересчета приводит не совсем к корректным данным, потому что происходит последовательное обновление данных
Т.е. кратко необходимо чтобы выделенные столбцы листов пересчитывались синхронно, а не последовательно


Прикладываю файл...  как воспроизвести мою проблему, вводим новые данные в ячейку A2 на каждом листе, последовательно считаем по листам (есть кнопка макрос) Результат будет корректным если 2 раза нажимать, но если структура сложнее то надо множество раз)

P.s. Использование Calculate во всей книги очень тяжело (большой объем данных), необходимо использовать столбцы, потому что необходим последовательный пересчет по годам
Страницы: 1
Наверх