Как устранить дубликаты в textjoin из arrayformula

#arrays #duplicates #textjoin

#массивы #дубликаты #textjoin

Вопрос:

У меня есть заимствованный фрагмент кода, который работает в таблицах Google, за исключением дубликатов. База данных с плоскими файлами представляет собой указатель технических статей за сорок лет ежемесячного технического журнала. На отдельном листе есть список «тегов», которые представляют ключевые слова, которые могут использоваться при поиске. Эта формула просматривает три текстовых поля в столбцах F, G, H — название статьи, описание статьи и основные навыки — сравнивает каждое слово со списком тегов, который представляет собой именованный диапазон, называемый «теги», и использует TEXTJOIN для перечисления всех «хитов» — каждое слово в трехстолбцы, которые также существуют в списке тегов.

=TEXTJOIN(«, «,TRUE,ArrayFormula(IF(ISNUMBER(SEARCH(tags,$F3369:$H3369)),теги,»»)))`

Но в нем перечислены все экземпляры, несмотря на наличие дубликатов. Вот несколько примеров результатов: «детали шкафа, шумы, выравнивание строк, выравнивание строк, инструменты, вес касания, вес касания, вертикали» «регулирование, повторение, повторение» «настройка, настройка, настройка»

Я хочу устранить дубликаты. Возможно ли это?

Комментарии:

1. Привет, добро пожаловать в StackOverflow. Не могли бы вы опубликовать код, который у вас есть под рукой?

2. То, что я «позаимствовал», — это arrayformula-if-isnumber, который я не претендую на понимание. Я пытаюсь использовать четыре варианта: =TEXTJOIN(«, «,TRUE,ArrayFormula(IF(ISNUMBER(FIND(tags,$ G11: $ I11)),теги,»»))) =TEXTJOIN(«, «,TRUE,ArrayFormula(IF(ISNUMBER(SEARCH(tags,$G11:$I11)),теги,»»))) =TEXTJOIN(«, «,TRUE,ArrayFormula(IF(ISNUMBER(FIND(tagsamp;» «,$ G11:$ I11amp;» «)),теги,»»))) =TEXTJOIN(«, «,TRUE,ArrayFormula(IF(ISNUMBER(SEARCH(tagsamp;» «,$G11:$ I11amp;» «)),теги,»»)))