ArrayFormula to automatically calculate one column - arrays

I want an array formula to use with Google Forms data to automatically calculate running metrics on my data.
In this case, in column Q, AE and AS I want it to auto-calculate whenever new responses come in.
I'm trying to use this formula below but isn't working for all column, just for the first line.
={arrayformula(if(len(AF3:AF);SUM(vlookup(AF3:AR3;$A$1100:$B$1101;2;0));))}
I want a sum of all words that contain "Verdadeiro" in a row.
What I'm doing wrong?
My Google Sheet:
https://docs.google.com/spreadsheets/d/1AVQ772IIXI-xZza0fecTTCe4S-Ku9rL1houTMnQZpbo/edit?usp=sharing

try in row 1:
={"Total AG";""; ARRAYFORMULA(IF(A3:A="";;
MMULT(N(REGEXMATCH(A3:AR&""; "Verdadeiro")); SEQUENCE(COLUMNS(A3:AR))^0)))}

Related

Automatic filling of Stock price

I have a list of scrips of stock market. When I add a new scrip in a new row, I would like to automatically fill its current price using GoogleFinance function of google sheets.
In the attached google sheets, Column A contains the mnemonics of the scrip from which column B calculates the current price. When I add a new scrip, I copy the formula to the new row. How do I achieve it automatically?
GOOGLEFINANCE is already a type of ARRAYFORMULA so it is not supported under ARRAYFORMULA. this means that it is not possible to process your A column with one single formula. you have only two options how to do this:
use script which will detect new entry in A column and insert single-cell GOOGLEFINANCE formula adjacent to it
hardcode it like:
=IFERROR({GOOGLEFINANCE("NSE:"&A2);
GOOGLEFINANCE("NSE:"&A3);
GOOGLEFINANCE("NSE:"&A4);
GOOGLEFINANCE("NSE:"&A5);
GOOGLEFINANCE("NSE:"&A6);
GOOGLEFINANCE("NSE:"&A7);
GOOGLEFINANCE("NSE:"&A8);
GOOGLEFINANCE("NSE:"&A9)})

Link two cells in google sheets with autofill

First of all I would like to thank you for your time.
I have a google data studio report that extracts data from a google sheet. The data studio sheet gets values from a google form (in the form of another tab in the sheet). Altough the cells are linked, right now I have to drag the cells in the data studio sheet to pull the values from the forms sheet. If there are no values it can´t pull anything and I would like to have real time values in the google data studio as soon as a form is filled.
Right now all I have is a simple (='Form '!C55) to pull. What I would like to do is if there is a new value in the following cell in the forms sheets then the following cell in the data studio sheets pulls it so it can go to the report in dat studio.
Cheers to all!
Try this formula, in column A, after your last row of good data. So perhaps in Dados!A91. Note you will need to first delete everything in all of the cells below and to the right of A91, since this formula is filling everything:
=QUERY('Formulário '!A9:O;"select A,G,D,J,M,H,E,K,N,I,F,L,O where B <> '' ";0)
This queries your Formulário sheet, and pulls all of the data starting in row 9 (since that is what you were showing with your formula before), and selects all of the correct columns in order.
Please test it out with a test form submission, to see that it works as expected, and that it is copying the correct columns, in the right order. Let me know of any questions or issues.
I'm not positive how sheet updates work when there is no active user logged into the sheet, but I suppose when Data Studio goes to pull from Dados, it will first ensure that it has the latest data from all formulas.
Update
To have the Max and Min values,which you say should be the same all the way down the column, add a formula like the following in the header row (row 1) of your Formulario sheet:
={"Cloro Max.";ArrayFormula(IF(LEN(A2:A);1,5;""))}
That gives a value of 1,5 for a column labelled Cloro Max. Be sure to delete anything from row 2 down, in that same column, or the array formula gives a #REF error, since it can't put data when there is already data entered in those lower cells.
You can change the text to create a Max or Min column for each value you want, in columns Q to V. Change the 1,5 to whatever number you want, such as 0,5 for Cloro Min.
It will always add the value(s) to each new row as it gets added from a submitted form response.

Continue to increment formula by N rows across columns in Google Sheets

I am trying to use UNIQUE= to grab unique values in a section of 11 rows from an XML parse. Every column I want to target the next set of rows down the column but I'm not sure how to do this automatically, dragging the formula (auto-fill) doesn't work.
Here is a link to my sheet with the UNIQUE formulas I have so far. You can see they increase by 11 each time. How can I continue that pattern without creating a new formula each time.
=UNIQUE($A2:$A13)
=UNIQUE($A14:$A25)
=UNIQUE($A26:$A37)
Here is my Google Sheet so far.
https://docs.google.com/spreadsheets/d/1y1cGi0Qy6a6PiQtQUrb5FQ99V31c_tEGi4aLvktxShE/edit?usp=sharing
Any help would be greatly appreciated!
paste in B2 and drag to the right:
=UNIQUE(INDIRECT("A"&2+(COLUMN()-2)*11+COLUMN()-2&":A"&13+(COLUMN()-2)*11+COLUMN()-2))
It looks to me like the whole thing can be done in one formula. Try creating a sheet from scratch and putting this in cell A2...
=ARRAYFORMULA(HLOOKUP("X",{"X";IMPORTXML("https://www67.myfantasyleague.com/2020/export?TYPE=schedule&L=14002&APIKEY=&W=1&F=&JSON=0","//matchup/franchise/#id")},SEQUENCE(1,14,0,12)+SEQUENCE(12)+1))

Array result from INDIRECT

So, I have a Google Sheet connected to a Google Form that I use for debugging a series of games. Each game has a Unit number and an Activity number.
I added to the sheet a column that, basing on the Unit and on the Activity, retrieves the name of the developer, contained in another sheet.
=INDIRECT("Developers!"&CHAR(C1+64+1)&(B1+1))
(I have to add 1 to each value because the other table has headers)
The formula does work on a single cell, but it's not applied to the new lines inserted by the Google Form.
I've seen that ARRAYFORMULA() returns an array that automatically populates the cells below.
Is there a command I can use to apply a formula to an array of values and have an array of results returned?
if you want to get just a range do:
=INDIRECT("Developers!"&ADDRESS(B1+1, C1+1, 4)&":"&ADDRESS(ROWS(A:A), C1+1, 4))
or populated range:
=INDIRECT("Developers!"&ADDRESS(B1+1, C1+1, 4)&":"&ADDRESS(COUNTA(B:B), C1+1, 4))

Google Data Studio piechart from column with multiple values per cell

I have an excel spreadsheet from a Questionnaire. One of the questions was in checkbox format. The result of this question are held in a single column, and where the user has selected more that one answer, the answers are separated by comma's.
What devices do you own? Mobile, PC, Laptop, Tablet
So in a single cell I get 'Mobile,PC' when these two are selected.
I am using Google Data Studio to visualise the data, but stuck on how to create a graph that shows all the values individually.
At the minute I get a combination for every value. So a value of 1 for 'Mobile,PC' rather than a value for 1 'PC' and '1'Mobile.
Google Data Studio doesn't allow countif statements, so a bit lost.
I have tried to TRIM, COUNIF and REGEX but none have worked.
Count(REGEXP_MATCH(Device, "PC"))
I'm a bit lost on this, tried so many combinations. If someone can put me on the right track I would be very grateful
I don't think you'll be able to achieve that with a pie chart without changing your data source first as it needs one dimension (Device) and then one count metric which your data doesn't seem to support.
You could create 4 metrics like
SUM(
CASE
WHEN REGEXP_MATCH(Device, "PC") then 1
ELSE 0
END
)
And put them into a Stacked bar / column chart. You might need to create a dimension that has a single value to avoid having multiple bars/columns.

Resources