Помогите дополнить формулу для ставки информации в ячейку по условию под номером 7. Считывание информации из соседней ячейки. Информация отображена в "Таблица1" с примерами.
Function iGost(cell$)
With CreateObject("VBScript.RegExp")
.Pattern = "(ГОСТ|ОЖО|ОСТ|ТУ).+"
If .test(cell) Then
iGost = .Execute(cell)(0)
Else
iGost = ""
End If
End With
End Function
=IFERROR(REPLACE([@Наименование];1;FIND(INDEX({" ГОСТ";" ОСТ";" ОЖО";" ТУ"};AGGREGATE(15;6;{1;2;3;4}/(FIND({" ГОСТ";" ОСТ";" ОЖО";" ТУ"};" "&[@Наименование])>0);1));" "&[@Наименование])-1;);"") но как по простому удалить "08пс" - пока не совсем понимаю
пока только =IFERROR(REPLACE(IFERROR(REPLACE([@Наименование];SEARCH("/* ГОСТ";[@Наименование];SEARCH(" ГОСТ*/*ГОСТ";" "&[@Наименование]));FIND(" ГОСТ";[@Наименование];SEARCH(" ГОСТ*/*ГОСТ";" "&[@Наименование])+2)-SEARCH("/* ГОСТ";[@Наименование];SEARCH(" ГОСТ*/*ГОСТ";" "&[@Наименование]))+1;"/");[@Наименование]);1;FIND(INDEX({" ГОСТ";" ОСТ";" ОЖО";" ТУ"};AGGREGATE(15;6;{1;2;3;4}/(FIND({" ГОСТ";" ОСТ";" ОЖО";" ТУ"};" "&[@Наименование])>0);1));" "&[@Наименование])-1;);"") но это для случая когда / может появится до первого ГОСТ, а ну и с регистром ничего не мудрил
Вариант на базе из прошлой темы =IFERROR(MID(TRIM(IFERROR(LEFT([@Наименование];FIND("/";[@Наименование];SEARCH(" ГОСТ*/";[@Наименование])))&"ГОСТ "& TRIM(RIGHT(SUBSTITUTE([@Наименование];" ГОСТ";REPT(" ";99);2);99));[@Наименование]));FIND("ГОСТ";TRIM(B5));99); IFERROR(MID(TRIM(B5);FIND("ТУ ";TRIM(B5));99); IFERROR(MID(TRIM(B5);FIND(" ОСТ";TRIM(B5))+1;99); IFERROR(MID(TRIM(B5);FIND("ОЖО";TRIM(B5));99);""))))