Как, возможно, вводит в заблуждение заголовок, я пишу набор автоматизированных инструментов для рабочей книги и столкнулся с препятствиями.
У меня есть функция, которая генерирует новый лист и присваивает ему текущую дату в качестве имени в формате «дд-мм-гггг» (без кавычек), а другую - обновляет все необходимые формулы в новом листе. .
Существует столбец, который рассчитывает разницу между значениями в столбце между текущим и предыдущим листом. После выполнения код выполняет и заменяет имена, но по какой-то причине в качестве имени листа указывается только год, а не вся дата. Это приводит к недействительной ссылке на ссылку.
Пример:
Предыдущее название листа: 23-5-2019
Текущее название листа: 25-5-2019
Измененная формула в текущем листе должна быть: = C3-'23-5-2019 '! C3
Но вместо этого он становится: = C3-23-5 -2019 '! C3
Код для замены ниже:
Sub FormulaUpdate()
range("D2:D100").Replace
What:=ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.count - 2).name,
Replacement:=ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.count - 1).name,
LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
End Sub
Любая помощь очень ценится:)