К сожалению, интерпретатор регулярных выражений, на котором основана эта программа, не поддерживает вложенные вызовы. Поэтому необходимо самостоятельно распарсить строку и соединить ее как надо.
="Итого с учетом всего : " & TEXT(D8;"#,##0.00") & REGEXREPLACE(
MONEYTEXT(D8;"RUB") & " ноль копеек ";
"(.*)\s(руб[а-я]+)(.*?)(коп[а-я]+)(.*)";
" ($1) $2 " & TEXT(ROUND(MOD(D8;1);2)*100;"00") & " $4"
)
Замечание. Представление текста валют обусловлено общим форматом интерпретатора и видением группы разработчиков и не поддерживает никаких банковских или других стандартов. Основная причина - отсутствие поддержки в развитии продукта. Времени и сил хватает только на исправление багов.
Обновлено
Подсказывают
https://t.me/googleappsscriptrc/35292 чуть более гуманную для человеческих глаз формулу для получения числа копеек
="Итого с учетом всего : " & D8 & " " & REGEXREPLACE(
MONEYTEXT(D8; "RUB");
"(.*?)\s(руб[а-я]{0,})[\s].*?(коп[а-я]{0,})";
"($1) $2 " & REGEXEXTRACT("" & D8;",(\d{2})") & " $3"
)