Добрый день господа.
Нужен Ваш совет.
Есть функция, которая перегоняет даты формата 31.12.12 в формат 4 кв. 2012 г.
Собственно все работает корректно и верно у меня.
Одно "но" - мне нужно, чтобы даты типа 01.10.2012 и 01.01.2013 принадлежали к 3 и 4 кварталу 2012 соответственно.
А VBA их относит уже к новому кварталу, т.к. собственно это и есть уже даты нового периода.
Следовательно мне нужно до момента преобразования даты отнять от нее 1 день, чтобы она была внутри отчетного квартала.
Можно ли это сделать прямо здесь в формуле?
ЗЫ: отнимать 1 день прямо на листе, а потом к результату применять функцию для меня не подходит. Нужно именно в код функции вставить.
Нужен Ваш совет.
Есть функция, которая перегоняет даты формата 31.12.12 в формат 4 кв. 2012 г.
Код |
---|
Dim re As RegExp Dim tempString Set re = New RegExp re.Pattern = "(-|\+|\(|\)| )" re.Global = True re.IgnoreCase = True tempString = re.R eplace(astring, "") re.Pattern = "\D*(\d\d?)\.(\d\d?)\.(\d{2,4})\D*" If re.Test(tempString) Then RgxData = DatePart("q", DateValue(re.R eplace(tempString, "$1.$2.$3"))) & " êâ. " & DatePart("yyyy", DateValue(re.R eplace(tempString, "$1.$2.$3"))) & " ã." Exit Function End If |
Собственно все работает корректно и верно у меня.
Одно "но" - мне нужно, чтобы даты типа 01.10.2012 и 01.01.2013 принадлежали к 3 и 4 кварталу 2012 соответственно.
А VBA их относит уже к новому кварталу, т.к. собственно это и есть уже даты нового периода.
Следовательно мне нужно до момента преобразования даты отнять от нее 1 день, чтобы она была внутри отчетного квартала.
Можно ли это сделать прямо здесь в формуле?
ЗЫ: отнимать 1 день прямо на листе, а потом к результату применять функцию для меня не подходит. Нужно именно в код функции вставить.