Страницы: 1
RSS
Макрос, Замена значений в ячейках на формулы
 
Здравствуйте.
Столкнулся со странным поведением экселя,
Макрорекодером записал макрос    
Код
Cells.Replace What:="=", Replacement:="=", LookAt:=xlPart, SearchOrder _
        :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False


Но выполнять его машина отказывается.
Суть задачки в том, чтобы из текстовой гиперссылки сделать человеческую, кликабельную на фаил.

Фаил во вложении.

Интересно то, что при ручном вызове по CTRL+H все отрабатывается, равенство меняется и из тектовой ячейки получается гиперссылка.



Как получились эти значения:
Я создал запрос PQ который читает имена файлов и создает эту самую формулу, после прохождения по различным папкам.
Но, по какой-то причине PQ все это выводит в умную таблицу в вид текста, а не в виде формулы. Код добавленного столбца в PQ ниже:
Код
Text.Combine({"=Гиперссылка(""",[Folder Path]&[Name]&""";"""&[Код Заявки]&""")"})


Идея была в том, чтобы после того, как выполнен запрос и сформирована умная таблица, нажать кнопку и через макрос заменить все значения на формулу, тем самым создав нормальную кликабельную ссылку....но что-то пошло не так.
Изменено: lostandleft - 06.01.2020 09:13:58
 
lostandleft, так попробуйте
 
Цитата
artyrH написал:
так попробуйте
Круто, спасибо!
Все отлично работает.
Не очень понимаю, что происходит, особенно в последней строчке, но работает
Код
    Selection.NumberFormat = "General"

    Selection.FormulaLocal = Selection.Value
Изменено: lostandleft - 06.01.2020 09:29:35
 
Цитата
lostandleft написал:
Не очень понимаю
я тоже не очень)
без этой строки - Selection.NumberFormat = "General" - тоже работает. как было сохранено так и скопировал.
Цитата
lostandleft написал:
отлично работает
как сказать.. используйте один раз, во второй раз формулы ликвидируются.

добавить бы проверку на проверку формула ли в ячейках или текстом формула
 
Цитата
artyrH написал:
во второй раз формулы ликвидируются.
Код
Selection.FormulaLocal = Selection.FormulaLocal
 
RAN, вот оказывается как все рядом :)  Спасибо большое
 
Цитата
RAN написал:
Selection.FormulaLocal = Selection.FormulaLocal
Спасибо !!!
Страницы: 1
Наверх