Excel VBA - Как отделить ссылки от активной таблицы и заменить формулы, указывающие на другие таблицы, значениями

Я ищу способ сделать две вещи с одним, одним макросом: 1) Разорвать внешние ссылки. 2) Измените части формул, указывающие на другие листы, на значения.

Я могу найти макросы для разрыва внешних ссылок, есть несколько способов сделать это, но у меня есть большая проблема со вторым пунктом.

Например - если у меня есть такая формула в моей активной рабочей таблице: "= K6 * 34 + Sheet1! A1"

Я хотел бы, чтобы это было заменено этим: "= K6 * 34 + 25"

Таким образом, ссылка Sheet1! A1 должна быть заменена на ее базовое значение. Извините, но я не могу предоставить какой-либо полу-прилично надежный код Я также не могу найти что-либо в Интернете, поскольку все относится к разрыву ссылок и тому подобному на уровне книги, а не на листе.

Зачем мне это нужно? Я хочу создать макрос, который я мог бы использовать, чтобы «сломать» один из рабочих листов в рабочей книге и отправить его по почте. Я могу сделать каждую часть макроса, кроме надежного поиска и замены ссылок на значения ...

Кто-нибудь может мне с этим помочь? Я думаю, что это будет полезно для гораздо большего количества людей, чем я.

Заранее благодарю всех, кто готов поделиться своими знаниями по этому вопросу.

Всего 1 ответ


Итак, вы должны определить загрузку имен для ячеек, которые «экспортируют» значение из листа. Затем, когда вы хотите отколоться, вы перебираете имена и заменяете их константой.

Таким образом, вам не нужно разбирать формулы, что (как уже было указано) будет очень сложным.

введите описание изображения здесь


Есть идеи?

10000