AND doesn't work that way with Array formulae because it ANDs the whole array together in the top left cell, regardless of number of dimensions.

I.e. it checks if "">"" which is FALSE, ANDed with anything it will return FALSE for the top left cell, that result is carried down.

You can use multiplication of truth values to create ANDing that works with ARRAYFORMULA like this:

=ArrayFormula((A1:A>1)*(B1:B>6) = 1)

The OR equivalent would obviously be

=ArrayFormula((A1:A>1)+(B1:B>6) > 0)
Answer from Robin Gertenbach on Stack Overflow
🌐
Google Support
support.google.com › docs › answer › 3093275
ARRAYFORMULA - Google Docs Editors Help
array_formula - A range, mathematical expression using one cell range or multiple ranges of the same size, or a function that returns a result greater than one cell.
🌐
Coupler.io Blog
blog.coupler.io › home › the complete guide to using arrayformula in google sheets for all
Google Sheets ARRAYFORMULA With Examples | Coupler.io Blog
October 14, 2025 - To use it in Google Sheets, you can either directly type “ARRAYFORMULA” or hit a Ctrl+Shift+Enter Google Sheets shortcut (Cmd + Shift + Enter on a Mac), while your cursor is in the formula bar to make a formula an array formula (Google Sheets ...
Discussions

ArrayFormula and "AND" Formula in Google Sheets - Stack Overflow
In Google Sheets, when using ArrayFormula with AND formula, I don't get the results as it should be. More on stackoverflow.com
🌐 stackoverflow.com
Google Sheets - auto calculate with ArrayFormula - Google Docs Editors Community
Skip to main content · Google Docs Editors Help · Sign in · Google Help · Help Center · Community · Google Docs Editors · Terms of Service · Submit feedback · Send feedback on More on support.google.com
🌐 support.google.com
November 13, 2020
How to do array formula?
try this in an empty column -- like E35 =ARRAYFORMULA( IF(ISBLANK(B35:B),, COUNTIFS( B35:B,B35:B, ROW(B35:B),"<="&ROW(B35:B)))) is this what you're trying to do? More on reddit.com
🌐 r/sheets
11
3
June 30, 2023
Tutorial: Arrayformula in Google Sheets, good practices & how to overcome Arrayformula restrictions with scripts
Hi, Today I will show you the script that can make copying formulas down work, when it does not work with arrayformula. But first, let’s have some introductions about arrayformula, for those who has not used this before in Google Sheets, some equivalents in Glide and some good practices while ... More on community.glideapps.com
🌐 community.glideapps.com
19
49
May 25, 2020
🌐
Ben Collins
benlcollins.com › home › how do array formulas work in google sheets?
How do array formulas work in Google Sheets? Get the lowdown here.
June 20, 2024 - Either type in the word ArrayFormula and add an opening/closing brackets to wrap your formula, or, more easily, just hit Ctrl + Shift + Enter (Cmd + Shift + Enter on a Mac) and Google Sheets will add the ArrayFormula wrapper for us.
🌐
Coursera
coursera.org › coursera articles › data › data analytics › how to use the array formula in google sheets
How to Use the Array Formula in Google Sheets | Coursera
November 26, 2025 - You might use an array to compute a singular value from a string of operations or go line by line to output a new collection of values. Google Sheets offers a convenient array formula with the syntax ARRAYFORMULA(array_formula).
Top answer
1 of 4
146

AND doesn't work that way with Array formulae because it ANDs the whole array together in the top left cell, regardless of number of dimensions.

I.e. it checks if "">"" which is FALSE, ANDed with anything it will return FALSE for the top left cell, that result is carried down.

You can use multiplication of truth values to create ANDing that works with ARRAYFORMULA like this:

=ArrayFormula((A1:A>1)*(B1:B>6) = 1)

The OR equivalent would obviously be

=ArrayFormula((A1:A>1)+(B1:B>6) > 0)
2 of 4
12
Take this formula for instance:
=ARRAYFORMULA(IF(ISNUMBER(G3:G),IF(AND( G3:G>=7.5,G3:G<=8),"Full Day",IF(AND(G3:G>8,G3:G<24) ,"Full Day+",IF(AND(G3<7.5,G3>=4),"Half Day",IF(G3<4,"Short Leave",)))),))

Since you use the ARRAYFORMULA function you should use * instead of the AND function.

=ARRAYFORMULA(IF(ISNUMBER(A3:A),IF((A3:A>=7.5)*(A3:A<=8),"Full Day",IF((A3:A>8)*(A3:A<24) ,"Full Day+",IF((A3<7.5)*(A3>=4),"Half Day",IF(A3<4,"Short Leave",)))),))

When using the ARRAYFORMULA function you should use * instead of the AND function and + instead of the OR function.


Explanation

I don't recall an official site about this right now. In any case.

Point 1
Within an arrayformula, AND gives a single value. Not an array of TRUE/FALSE.

Point 2
You must also remember that in "math language", TRUE=1 and FALSE=0

Meaning

+----------+--------+
| Formula  | Result |
+----------+--------+
| =TRUE+2  |      3 |
| =FALSE+2 |      2 |
+----------+--------+

As you can see one can interchange between boolean TRUE/FALSE and 1/0 numbers.

Point 3
About the AND function

The AND function returns true if all the provided arguments are logically true and false if any of the provided arguments are logically false.

Putting it all together
In an arrayformula, instead of using AND/OR when making comparisons, we take advantage of the above information.

So, the "multiplication" (A3:A>=7.5)*(A3:A<=8) will return 1 (meaning TRUE) only if both sides return TRUE. All other conditions return 0 (meaning FALSE).
This is the exact behaviour of the AND function and does work in an ARRAYFORMULA.

About the OR function

The OR function returns true if any of the provided arguments are logically true and false if all of the provided arguments are logically false.

The same logic is applied within the arrayformula, when using + ("addition") instead of the OR function.

🌐
YouTube
youtube.com › watch
Google Sheets - Use ARRAYFORMULA Instead of Repeating Functions - YouTube
The ARRAYFORMULA allows you to replace a series of formulas with just one. The function works with ranges instead of single cells.🕒 Timestamps:0:00 The Simp...
Published: January 16, 2021
Find elsewhere
🌐
LiveFlow
liveflow.com › product-guides › arrayformula-in-google-sheets
ARRAYFORMULA Function in Google Sheets: Explained | LiveFlow
Array_formula: A range, mathematical expression using a cell or multiple ranges of the same size, or a function that returns a result larger than one cell. If you insert ranges, they must be the same size.
🌐
Google Support
support.google.com › docs › thread › 82821691 › google-sheets-auto-calculate-with-arrayformula
Google Sheets - auto calculate with ArrayFormula - Google Docs Editors Community
November 13, 2020 - Skip to main content · Google Docs Editors Help · Sign in · Google Help · Help Center · Community · Google Docs Editors · Terms of Service · Submit feedback · Send feedback on
🌐
Google Support
support.google.com › docs › answer › 6208276
Using arrays in Google Sheets - Google Docs Editors Help
Note: For countries that use commas as decimal separators (for example, €1,00), commas would be replaced by backslashes (\) when creating arrays. You can join multiple ranges into one continuous range using this same punctuation. For example, to combine values from A1-A10 with the values from D1-D10, you can use the following formula to create a range in a continuous column: ={A1:A10; D1:D10}
🌐
Reddit
reddit.com › r/sheets › how to do array formula?
r/sheets on Reddit: How to do array formula?
June 30, 2023 -

I have a sheet listing names with categories. Every time I start a new category, I need the numbering to start from one. I have a code that works well, but I have to copy paste the code every time I add a new row. I'm quite new to google sheets and just found out about ARRAYFORMULA.

This is my current formula:

=IF(B35 = B34, C34+1, "")

  • Column B has the category names (they are always in order...like same category goes in adjacent rows)

  • Column C has the numbering.

  • The formula pasted here is for cell C35.

I already tried with this, but it gives an error.

=ArrayFormula(IF(B35:B = B34:B, C34:C+1, ""))

How do I convert this into ARRAYFORMULA?

Any help would be appreciated.

🌐
Glide Community
community.glideapps.com › ask for help
Tutorial: Arrayformula in Google Sheets, good practices & how to overcome Arrayformula restrictions with scripts - Ask for Help - Glide Community
May 25, 2020 - Hi, Today I will show you the script that can make copying formulas down work, when it does not work with arrayformula. But first, let’s have some introductions about arrayformula, for those who has not used this before in Google Sheets, some equivalents in Glide and some good practices while ...
🌐
Zapier
community.zapier.com › home › learn and share › featured articles › creating google sheets rows with array formulas
Creating Google Sheets Rows with Array Formulas | Zapier Community
October 27, 2021 - Our new row is created in Row 5 - the next blank row on the Sheet. And our Array Formulas in Columns E, F and G are applied to the new row as expected. When creating new rows on a Google Sheet from a Zap - the new row will be created in the next blank row on the Sheet.
🌐
YouTube
youtube.com › watch
How to Use ARRAYFORMULA in Google Sheets - YouTube
Full Guide: https://spreadsheetpoint.com/google-sheets-array-formula-guide/To use the ARRAYFORMULA function in Google Sheets, you'll need to enter the cell r...
Published: March 14, 2024
Top answer
1 of 3
2

I tried using ARRAYFORMULA using whole columns (e.g. A:A, B:B, etc.) but if it's a formula where I need a result output to each row

you can always freeze it like:

=INDIRECT("A:A")

this way you can add rows anywhere you want (if you of course not add new row above the row that holds the formula - that would be troublesome to fit in A:A into A2:A)


that the INDEX function just does not work with ARRAYFORMULA at all

INDEX is already ARRAYFORMULA type of formula. the analogy being here as: you need a car to get from A to B where INDEX is a blue car with 3 doors and ARRAYFORMULA is a red car with 5 doors - it doesn't matter what color you have, you just need a car


= IF (G2 <> G1, 0, B1 + 1)

while this is direct logic there are several ways how to achieve the same thing. proper usage would require not to use such formulas as ARRAYFORMULA in column G or B to avoid circular dependency errors. for a simple resetting count up try:

=ARRAYFORMULA(COUNTIFS(B1:B7, B1:B7, 
 SEQUENCE(ROWS(B1:B7)),"<="&SEQUENCE(ROWS(B1:B7))))

feel free to change B1:B7 to open range or frozen range...


update:

=INDEX(IF(B2:B="";; COUNTIFS(B2:B; B2:B; 
 SEQUENCE(ROWS(B2:B)); "<="&SEQUENCE(ROWS(B2:B)))-1))

2 of 3
0

You should use the INDEX function with MATCH instead of INDIRECT in your ARRAYFORMULA For example, if your data is in the range A1:A11 , and you want to retrieve the value at row 5 through INDIRECT , you would use: =INDIRECT("A" & 5) If you want to retrieve the value at row 5 through INDEX , you would use: =INDEX(A:A, 5) Now, if you want to use the INDEX function with ARRAYFORMULA , you will need to use the MATCH function to find the row number of the value you want, since INDEX only takes a row number as its second argument. For example, if you want to retrieve the value at row 5 through ARRAYFORMULA and INDEX/MATCH , you would use: =ARRAYFORMULA(INDEX(A:A, MATCH(5, ROW(A:A)))) This formula will return the value in A5

Note: In your example, you're trying to match $G2 with $G1:$G1 . If you want to match $G2 with $G1:$G3 , you would use: =ARRAYFORMULA(INDEX(A:A, MATCH($G2, $G1:$G3))) This formula will return the value from A1 , A2 , or A3 depending on the value of $G2

🌐
Reddit
reddit.com › r/googlesheets › when to not use an array formula?
r/googlesheets on Reddit: When to NOT use an array formula?
September 16, 2022 -

Hello all. I am working on my first big dataset with Google Sheets. The sheet holds employee clock in/clock out info for a small school staff and I plan to make a new one for each school year. There will be an estimated 24K rows in the sheet by the end of the school year. I am trying to get ahead and apply the formulas to the entire columns without having to drag it down. I have a few array formulas in the sheet now which work as intended. My question is, should I make every column an array formula, or will this mess something up? When should I NOT use an array, and when should I use an array? Thanks in advance!

🌐
Owox
owox.com › blog › articles › google sheets tips › mastering arrayformula in google sheets: a complete guide
Complete Guide to Master Array Formulas in Google Sheets for 2025
May 25, 2026 - ARRAYFORMULA in Google Sheets is ... This advanced function enables users to apply a single formula across multiple cells or ranges, automating calculations and transforming the way data is handled....
🌐
Google Sheets
sheets-pratique.com › en › functions › arrayformula
Google Sheets Function: ARRAYFORMULA
In this case, there is a formula in each of the 8 cells. Well, the ARRAYFORMULA function allows displaying the same results but by entering the formula once and in a single cell!
🌐
Form Approvals
formapprovals.com › home › how to use arrayformula in google sheets™ with google forms™
How to Use ARRAYFORMULA in Google Sheets™ with Google Forms™ | Form Approvals
March 30, 2026 - Google Sheets defines an ARRAYFORMULA as enabling the display of values returned from an array formula into multiple rows and/or columns and the use of non-array functions with arrays.
🌐
Sheetgo
sheetgo.com › home › top 5 dynamic array formulas in google sheets
Top 5 dynamic array formulas in Google Sheets - Sheetgo
May 1, 2026 - Discover 5 Google Sheets array formulas: SEQUENCE, SPLIT, FLATTEN, BYROW, and BYCOL. Learn how they can simplify your spreadsheets.
🌐
Better Sheets
bettersheets.co › formulas › arrayformula
ARRAYFORMULA() Formula in Google Sheets
ARRAYFORMULA() is a google Google Sheets formula that Enables the display of values returned from an array formula into m...