Кратчайшая формула для добавления столбца в массив в таблицах Google

#arrays #if-statement #google-sheets #google-sheets-formula #array-formulas

#массивы #оператор if #google-sheets #google-sheets-формула #массив-формулы

Вопрос:

2D-массив с непредсказуемым размером в таблицах Google :

 name | age 
Sam  | 20
Sim  | 30
Jim  | 25
  

Для преобразования в (добавлена постоянная строка A)

 name | age | Semester
Sam  | 20  | A
Sim  | 30  | A
Jim  | 25  | A
  

Формула, подобная

={A1:B,"A"} Не работает.

Ответ №1:

Вы можете попробовать

 =ArrayFormula(IF(V2:V="",,"A"))  
  

введите описание изображения здесь

Без формулы
Или вы можете поместить A в ячейку C2 и дважды щелкнуть по крестику в правом нижнем углу ячейки.

Ответ №2:

Придумал простой способ сделать это,

 =query(A1:B,"select A,B,'A' where A is not null label 'A' ''")
  

Это решает проблему.

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

1. Я боюсь, что ваш запрос будет размещен A , даже если в or нет значений A B . Это то, чего вы действительно хотите?

2. Просто добавьте «где A не равно null», чтобы решить проблему, упомянутую @marikamitsos (при необходимости)

Ответ №3:

кратчайшим будет:

 =INDEX(IF(A2:A="",,"A"))
  

Ответ №4:

на мой взгляд, вы можете поместить в свою C1 ячейку следующее:

={"Semester";arrayformula(if(len(a2:a),"A",))}

Затем, если вы создадите фильтр и сортировку, он сохранит значения всего столбца:

введите описание изображения здесь