2017-02-19 47 views
0

Я построил формулу, как это с помощью CONCATENATE функции:Как сделать строку для формулы в Excel?

=CONCATENATE("=SUM('D:\Tour\", TEXT(A2,"yyy"), "\", TEXT(A2,"mmmm"), "\", TEXT(A2,"mmm"), " ", TEXT(A2,"d"), "\[", B2, ".xlsx]Sheet1'!E:E)") 

и возвращает результаты, подобные следующим:

= SUM ('D: \ Tour \ 2017 \ Февраль \ Feb 1 [11043.xlsx] Sheet1 '! E: E)

Столбец А содержит дату, а столбец В содержит имя файла.

На данный момент, я копирую формулу в блокнот и затем вставляю обратно в Excel. Можно ли использовать формулу напрямую?

(я попытался косвенную формулу, но она не работает.)

ответ

0

на основе ответов на this question, вы можете написать следующую функцию VBA:

Function EV(s As String) As Variant 
    EV = Evaluate(s) 
End Function 

и вызвать его из Excel:

=EV("=A1+B1") 

или

=EV(C2) 

Существует second answer to that question, который не связан с VBA, но я не смог заставить его работать.