Dog Agility Tracker - Google Sheets ARRAYFORMULA с использованием увеличения диапазона ячеек, абсолютной привязки и ссылки на другой лист - PullRequest
0 голосов
/ 07 февраля 2020

Последние несколько дней я работал над электронной таблицей, чтобы отслеживать пробеги, титулы и очки моих собак. Я не очень разбираюсь в таблицах, но могу прятаться, чтобы получить желаемый результат большую часть времени. Если бы эта таблица была только для меня, я был бы рад просто ввести различные названия, поскольку они заработаны. Тем не менее, я хотел бы поделиться этим с моими друзьями и одноклассниками по ловкости, чтобы они могли лучше отслеживать достижения своих собак, особенно для тех, кто только начинает. Для этого я хочу настроить его так, чтобы он автоматически заполнял заголовки.

Самой большой проблемой, с которой я столкнулся, было определение правильной формулы, которая подсчитала бы правильное количество квалификационных заездов (Q) и баллов (при необходимости). ) чтобы получить указанный c заголовок, а затем убедиться, что заголовок не повторяется. На отдельном листе я создал формулу для каждого заголовка, которая давала бы значение ИСТИНА / ЛОЖЬ. Затем я создал формулу, которая будет возвращать заработанный титул, если для значения ИСТИНА существует МАТЧ. Я был очень доволен собой, пока не осознал, насколько беспорядочным было копирование всех формул и как быстро это раздуло бы мою электронную таблицу.

Кажется, что ARRAYFORMULA лучше всего удовлетворит мои потребности, но я не могу понять как это работает для моих формул. Я надеялся, что это будет так же просто, как просто использовать ARRAYFORMULA(), но это не скопировало его, вероятно, потому что [Column] [Row]: [Column] не был определен?:

=ARRAYFORMULA(AND((countifs(Lexi!G$17:G19,"STD- Novice A",Lexi!H$17:H19, "✔") + countifs(Lexi!G$17:G19,"STD- Novice B",Lexi!H$17:H19,"✔"))=3,COUNTIF(Lexi!I$17:Lexi!I18,'Lexi-Titles'!B$18)=0))

Затем я попытался использовать оператор IF, который определил диапазон массива, но он также не работал правильно.

=ARRAYFORMULA(IF(Lexi!G19:G<>"",AND((countifs(Lexi!G$17:G19,"STD- Novice A",Lexi!H$17:H19, "✔") + countifs(Lexi!G$17:G19,"STD- Novice B",Lexi!H$17:H19,"✔"))=3,COUNTIF(Lexi!I$17:Lexi!I18,'Lexi-Titles'!B$18)=0),"")

Я также попытался определить все ячейки, чтобы соответствовать параметрам массива (по крайней мере, я подумал так):

=ARRAYFORMULA(AND((countifs((Lexi!G$17):(Lexi!G19:G),"STD- Novice A",(Lexi!H$17):(Lexi!H19:H), "✔") + countifs(Lexi!G$17):(Lexi!G19:G),"STD- Novice B",(Lexi!H$17):(Lexi!H19:H),"✔"))=3,COUNTIF((Lexi!I$17):(Lexi!I18:I),'Lexi-Titles'!B$18)=0))

Скорее всего, я делаю что-то не так или, может быть, ARRAYFORMULA не сработает для моей ситуации, и настоящее решение мне не под силу?

Я слишком новый, чтобы вставлять фотографии, поэтому вот ссылка на мой Google Sheet вместо

На листах Lexi и Lexi-Title я выделил ячейки голубого цвета, которые необходимо скопировать.

Это мой настоящий лист, а не дубликат, поэтому я установил его на «Только просмотр», чтобы мои друзья случайно что-то не изменили. Если видео о ловкости собак вас заинтересует, это нормально Спасибо за любую помощь или совет, который вы можете предложить.

...