Есть ли способ извлечь результат формулы из формулы для дальнейшей математической обработки? - PullRequest
1 голос
/ 16 января 2020

Эта формула функции просматривает указанный путь к файлу в ячейке A2 и возвращает имя файла на основе расширения файла в ячейке B2:

Формула в ячейке A4: =IFERROR(INDEX(GetFileNamesbyExt($A$2,$B$2),ROW()-2),"")

Результирующая ячейка A4 Отчет о распределении обслуживающего баланса , Проблема, с которой я сталкиваюсь, заключается в том, что , поскольку результат является результатом формулы, я не могу выделить дневную часть.

Я не против, если у кого-то есть решение VBA, что угодно работает.

Цель состоит в том, чтобы получить разницу в количестве дней между двумя последними файлами на основе даты в строке файла. Например:

Разница между:

Отчет о распределении обслуживающего баланса 1-13-2020.xlsx

Отчет о распределении обслуживающего баланса 1-17-2020.xlsx

= 4

Ответы [ 2 ]

3 голосов
/ 16 января 2020

Рассмотрим:

=LEFT(MID(A4,FIND("-",A4)+1,999),FIND("-",MID(A4,FIND("-",A4)+1,999))-1)

в основном получение текста между тире.

ПРИМЕЧАНИЕ:

Его легче увидеть в двух ячейках , Скажите в D1 положить:

=MID(A4,FIND("-",A4)+1,999)

и в E1 положить:

=LEFT(D1,FIND("-",D1)-1)

enter image description here

2 голосов
/ 16 января 2020

Чтобы получить день, используйте:

=DAY(--TRIM(LEFT(MID(A4,SEARCH("??-*-????.",A4),999),FIND(".",MID(A4,SEARCH("??-*-????.",A4),999))-1)))

, чтобы получить дни между днями, мы можем опустить ДЕНЬ () и просто вычесть даты:

=TRIM(LEFT(MID(A5,SEARCH("??-*-????.",A5),999),FIND(".",MID(A5,SEARCH("??-*-????.",A5),999))-1))-TRIM(LEFT(MID(A4,SEARCH("??-*-????.",A4),999),FIND(".",MID(A4,SEARCH("??-*-????.",A4),999))-1))

enter image description here

...