Очень похоже на проблему с транспонированием данных в транспонировать данные столбца Я застрял, пытаясь транспонировать набор данных с несколькими переменными. Самая большая проблема, с которой я сталкиваюсь, — это попытка удалить бесполезные данные. Таблица 1 - как данные получены
Таблица 2 - желаемый результат
Мне не удалось обрезать ячейки Предупреждение, и что-то пошло не так из-за ошибок вложенности.
Столбец A всегда будет b MMM DD YYYY, столбец B будет известным поставщиком, поэтому можно использовать справочный список. В столбце C всегда будет 7, за которым следуют 4 нуля, столбцы D и E могут отсутствовать, как показано. группы бронируются по дате, а затем «Просмотреть подробности».
Если вам не нужно перетаскивание формул, вы можете использовать что-то вроде следующих шагов, которые я сделал:
A2
.B2
: =N(B1)+if (ISDATE(A2),1,0)
(ПРИМЕЧАНИЕ, эта формула не является динамической)D1
: =UNIQUE(Filter(B:B,B:B<>""))
E2
): =Transpose(FILTER(if (A:A = "Alert",,A:A),(B:B=D2)*(A:A<>"ALert")*(A:A<>"Something Went Wrong")*(A:A<>"View Details")))
Как вы можете видеть в части 4, я попытался удалить участников, которых вы пометили как нерелевантных. Я не уверен, какие еще правила у вас есть.
Вероятно, есть способ сделать шаги 2 и 4 динамическими формулами разлива, но это все, на что у меня есть время.
Закончилось этим (желтые ячейки имеют соответствующую формулу).
Большое спасибо за проделанную работу. Если бы не необходимость отбрасывать текст, это был бы хороший выбор. Спасибо
REDUCE
массив в строку, соединенную разделителями. Если значение представляет собой дату, присоединяйтесь к 🍚
, иначе, если это значение интереса, определяемое REGEXMATCH
, присоединяйтесь к 🐇
. Из созданной строки, разделенной разделителем строк 🍚
, TRANSPOSE
и SPLIT
разделителем столбцов 🐇
=ARRAYFORMULA(SPLIT(TRANSPOSE(SPLIT(REDUCE(,A2:A20,LAMBDA(a,c,IFS(ISDATE(c),a&"🍚"&TO_TEXT(c),REGEXMATCH(TO_TEXT(c),".*company|70{5}\d+|\d+"),a&"🐇"&c,TRUE,a))),"🍚")),"🐇"))
Большое спасибо за работу, которую вы проделали до сих пор. Столбец B с названиями компаний — это заполнители для имен, которые я не хотел раскрывать. Есть ли способ изменить это?
@Nickm Это образец. Ожидается, что вы сделаете остальную работу, изменяя вещи по мере необходимости. Попробуйте XMATCH+ISNUMBER
. Если вы не можете понять это после разумного исследования (по крайней мере, несколько часов), задайте новый вопрос
@Nickm Я согласен с TheMaster ... это не было частью вашего вопроса, и вы должны принять этот ответ, поскольку он довольно впечатляющий. Я нашел три новые формулы, о которых не знал.
@pgSystemTester Какие были три?
@TheMaster REDUCE, КОМПАНИЯ и 🐇
Просто шучу. To_Text
и Reduce
(не могу сосчитать).
@pgSystemTester Я знаю, что вы просто шутите :) Но, поскольку вы, кажется, активно работаете с [excel], я удивлен, что вы не знали о reduce
, который, я думаю, появился в Excel по крайней мере год назад.
Возможно, я слышал об этом, но точно нет TO_TEXT
. Я все еще загипнотизирован диапазонами разливов с 2019 года; я только несколько месяцев назад услышал о некоторых новых функциях, в основном связанных с массивами, которые очень нужны! Я до сих пор не понимаю, что вы сделали с reduce
в сочетании с lambda
. Я знаю, что означает сокращение в javaScript, поэтому я уверен, что смогу понять это, но за 5 минут, пока я смотрел на вашу формулу, единственное, что я придумал, это комедийный материал, касающийся вашего выбора разделителей строк (что было довольно прагматичный).
@pgSystemTester Я думаю, вы не знали синтаксиса. Но концепция та же, что и в Javascript. a
— это аккумулятор, а c
— текущее значение. По сути, это простая петля.