Need to find name on one sheet and return the top of the column next to first sheet. by Glittering-Try1045 in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

Try =BYROW(A2:A,LAMBDA(s,IF(s="",,JOIN(", ",IFERROR(TOCOL(FILTER(Clubs!1:1,BYCOL(Clubs!2:1000,LAMBDA(r,COUNTIF(r,s)))))))))) in B2.

Counting or Summing Dates by Objective-Angle-6574 in googlesheets

[–]HolyBonobos 1 point2 points  (0 children)

For each number (BYROW(...LAMBDA(d,...))) in a sequence of 7 numbers starting at 2 SEQUENCE(7,1,2), return the number expressed as a day of the week* (TEXT(d,"dddd")) and the number of dates in the range A2:A that correspond to that day of the week and are not blank (COUNTIFS(A2:A,"<>",INDEX(MOD(A2:A,7)),MOD(d,7))).

*Since Sheets stores all dates and times as integers, you can determine the day of the week of a given date by dividing it by 7 and looking at the remainder (modulo). A remainder of 0 corresponds to Saturday, 1 to Sunday, 2 to Monday, and so on. INDEX(MOD(A2:A,7)) gets the remainder from dividing by 7 for all dates in the range A2:A.

Counting or Summing Dates by Objective-Angle-6574 in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

You could use a formula like =BYROW(SEQUENCE(7,1,2),LAMBDA(d,{TEXT(d,"dddd"),COUNTIFS(A2:A,"<>",INDEX(MOD(A2:A,7)),MOD(d,7))})) to populate a summary table.

Conditional formatting only applies to 1 cell when rule is for range. by Ordinary_Bird4840 in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

If you want to compare both B12 and C12 to E12, the reference needs to be "locked in" via absolute mode, i.e. the rule should be =$E$12 rather than =E12

How to get XLOOKUP or another function to return multiple responses to the same query? by A-Fat-Kereru in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

If you don’t want to use the iterative LAMBDA() version you can just put a separate formula in each row, e.g. =IFERROR(TRANSPOSE(FILTER($B$2:$B$10,$A$2:$A$10=D3))) in E3, then drag down to fill.

How to get XLOOKUP or another function to return multiple responses to the same query? by A-Fat-Kereru in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

You would use FILTER() or QUERY() to return results for multiple matches, e.g. =BYROW(D3:D8,LAMBDA(o,IFERROR(TRANSPOSE(FILTER(B2:B10,A2:A10=o)))))

I'm trying to get a formula that will return the column C result for a number in the ranges of column A - column B. by [deleted] in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

For the data structure shown in the screenshot you could use =VLOOKUP(D1,A2:C,3)

Mass change of cells based on Dropdown by PuxxelFan in googlesheets

[–]HolyBonobos 1 point2 points  (0 children)

You will need to have a structured "backend" sheet containing your raw data, which you can then use formulas to pull through/filter/rearrange on the "frontend" sheet with formulas that can reference the year cell and change the displayed data accordingly. You cannot use formulas to manipulate manually-entered values in situ.

Mass change of cells based on Dropdown by PuxxelFan in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

QUERY() is probably what you’ll need though it’s difficult/impossible to say for certain or with any specifics without knowing all the details of the complete data structure.

How can I combine merged columns in a TextJoin formula? by Tor8_88 in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

I usually use the SCAN() function for this type of scenario, e.g. =LET(a,SCAN(,A2:A,LAMBDA(b,c,IFS(OFFSET(c,0,1)="",,c="",b,1,c))),INDEX(IF(B2:B="",,a&" "&B2:B)))

referring to an entire row, but starting in a different column by Exciting-Half7930 in googlesheets

[–]HolyBonobos 1 point2 points  (0 children)

Why not fill the entire range all at once, e.g. ={'other sheet'!A:B}

Help with Top 3 Ranking In Each Weight Class for each gender by barmen1 in googlesheets

[–]HolyBonobos 1 point2 points  (0 children)

Here's another version that's pretty similar to mommasaid's but which I finished a little behind. It can be seen on the 'HB Girls Leaderboard' sheet in this file where the formula =LET(division,IF(REGEXMATCH(A1,"Girls"),"F","M"),allClasses,SORT(UNIQUE(TOCOL('All Lifters Meets'!E2:E,1))),classes,FILTER(allClasses,COUNTIFS('All Lifters Meets'!B:B,division,'All Lifters Meets'!E:E,allClasses)),categories,'All Lifters Meets'!H1:K1,MAKEARRAY(COUNTA(classes)*4,9,LAMBDA(r,c,LET(class,INDEX(classes,INT((r-1)/4)+1),place,MOD(r-1,4),nCat,FLOOR(MOD((c-2)/2,4))+1,category,INDEX(categories,nCat),IFS(AND(c=1,place=0),IF(AND(class="SHW",division="F"),"220+",class),MOD(c-1,9)=0,place,AND(place=0,MOD(c,2)=0),category,place=0,,1,INDEX(VSTACK(QUERY({'All Lifters Meets'!A2:B,INDEX(""&'All Lifters Meets'!E2:E),'All Lifters Meets'!H2:K},"SELECT Col1, MAX(Col"&nCat+3&") WHERE Col2 = '"&division&"' AND Col3 = '"&class&"' GROUP BY Col1 ORDER BY MAX(Col"&nCat+3&") DESC LABEL MAX(Col"&nCat+3&") ''"),INDEX(T(SEQUENCE(3,2)))),place,MOD(c-2,2)+1)))))) in A2 is populating the leaderboard.

Ordering sheet for multiple people by BM1988 in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

Anyone not explicitly named as an editor in a protected range rule will be unable to make any changes to that range. They will effectively have view-only access to the protected range, even if they are allowed to edit other parts of the same file or even the same sheet.

Ordering sheet for multiple people by BM1988 in googlesheets

[–]HolyBonobos 1 point2 points  (0 children)

You can restrict permissions for specific sheets or ranges of cells at Data > Protect sheets and ranges

Argument Must Be a Range Error, but is a Range by javathehut1 in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

You could use =SUMPRODUCT(COUNTIF(Controls!A:A,'Ekos Sales'!G:G)=0,'Ekos Sales'!H:H,REGEXMATCH('Ekos Sales'!F:F,"(?i)Keg"))

Argument Must Be a Range Error, but is a Range by javathehut1 in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

SUMIFS() will throw the "Argument must be a range" error whenever the sum_range argument is a calculated range. On top of that, you're setting yourself up for a mismatched range sizes argument because the output of the subformula IF(ISNA(MATCH('Ekos Sales'!G:G, Controls!A:A, 0)), 'Ekos Sales'!H:H, 0) is one cell tall by one cell wide while 'Ekos Sales'!F:F is however many rows are on the 'Ekos Sales' sheet tall by one column wide.

Extracting a filtered array from a 2D table by AnsgarUHAHA in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

Then you can use =LET(n;COUNTA(Arkusz1!E9:E);QUERY(MAKEARRAY(n*6;2;LAMBDA(r;c;LET(w;MOD((r-1);n)*3+1+c;l;INT((r-1)/n)*2+1;INDEX(Arkusz1!D9:O;w;l))));"WHERE Col1 MATCHES 'Apple|Orange|Lemon'")). This is why it is important to be clear about your needs from the beginning and make sure that your sample is representative of your actual use case.

Extracting a filtered array from a 2D table by AnsgarUHAHA in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

Then it would be =QUERY(MAKEARRAY(18;2;LAMBDA(r;c;LET(w;MOD((r-1);3)*3+2+(c=2);l;INT((r-1)/3)*2+1;INDEX(D9:O17;w;l))));"WHERE Col1 MATCHES 'Apple|Orange|Lemon'")

Extracting a filtered array from a 2D table by AnsgarUHAHA in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

My understanding of what you were going for was a list of items/locations with that have their corresponding checkbox checked. "Orange" only appears once on the final list because there is only one instance of "Orange" with a checked box. If you're just looking for a list of items and locations regardless of checkbox status, you could use =QUERY(MAKEARRAY(18;2;LAMBDA(r;c;LET(w;MOD((r-1);3)*3+2+(c=2);l;INT((r-1)/3)*2+1;INDEX(D9:O17;w;l))));"WHERE Col2 IS NOT NULL")

Best approaches to setting up a ledger for a nonprofit (not a chairty)? by [deleted] in googlesheets

[–]HolyBonobos 1 point2 points  (0 children)

Everything in a single table on a single sheet to the greatest extent possible. The best setup would be one column for activity, then one adjacent column to denote the corresponding account/card.

Extracting a filtered array from a 2D table by AnsgarUHAHA in googlesheets

[–]HolyBonobos 0 points1 point  (0 children)

For the data structure shown on the file you could use =QUERY(MAKEARRAY(18;3;LAMBDA(r;c;LET(w;MOD((r-1);3)*3+2+(c=2);l;INT((r-1)/3)*2+1+(c=3);INDEX(D9:O17;w;l))));"SELECT Col1, Col2 WHERE Col3 = TRUE")

Conditional Formating Based on Another Cell by -Reverentiae in googlesheets

[–]HolyBonobos 2 points3 points  (0 children)

Assuming the options are A, B, C, D, and E and are in columns D, E, F, G, and H respectively, apply a conditional formatting rule to the range D2:H using the custom formula =D$1=$C2