Making Formulas more dynamic when dragged across the sheet - google-sheets

Here is a link to a sample of my sheet.
Columns B and C work well, despite how clunky the functions are. I would like to make the functions in any cell B2:C7 more dynamic, and am using column D as a testing column. I am not a fan of how INDIRECT() needs to be manually changed when dragging the cells across and am looking for a simpler solution.
Specifically looking at the INDEX() function in cell D2.
I am trying to run a counta(D7:the row with today's date) in cell D2.
When I do
=(counta(D7:D13))/365
I get the correct result 6/365 = 1.644.
Now, when I use the INDEX() to call on the value in CELL D3 as shown here:
=(counta(D7:INDEX(D:D,3,)))/365
I get a value which would match the 4/365 = 1.096
When I highlight "INDEX(D:D,3,)" the tool tip pops up and shows the correct value of cell D3 which is "D13"
Another user provided a working solution using INDIRECT() and SUBSTITUTE, but I am specifically curious about why INDEX() acts this way as it seems to be much simpler to read/understand. Any reason why its off by 2 values?
Thanks,

UPDATED:
After understanding the question a little better...
Here is a formula to show the percent complete that can be dragged sideways, you can find it on the new tab called MK.Help:
=COUNTIFS($A7:$A,"<="&TODAY(),B7:B,"<>")/365

Related

Change cell value based on checkbox in Google sheets

I'm using Google sheet to manage my budget (see sample below) where I add each of my expenses as a single entry (yes, sounds like a lot of work). I sometimes split the expense with my roommate but then I have to add the value and divide by 2 everytime.
I was thinking if I could use a checkbox next to the value that will automatically divide the expense number by 2 when I check it. Is this possible?
I'm open to simple suggestions other than the checkbox to automatically update the value. Thank you.
Using simple IF formula you can just check if the checkbox is true, if it is then it will divide the current value on column C by 2. Otherwise it will remain blank.
Formula:
=IF(D1,C1/2,"")
Drag down to other cells.
Result:
Suggestion, Alternate solution:
If you'd like you can make a table with a column for your roommate, instead of editing the actual column so you can see both values. And use this formula:
=if(NOT(D2=""),E2/2,E2)
You have a column for per head contribution/split. If the cell on roommate is blank then it will stay as the total value, if roommate has an additional then it will be added to total and split it by 2.
Or using arrayformula:
=arrayformula(if(NOT(D2:D=""),E2:E/2,E2:E))
Works the same as above you just have to fill the enter the formula in the first cell no need to drag down and it will automatically expand to rows/cells below just make sure that below cells are empty or it will return an error.
Additional - Using same cell
As you've mentioned in the comments. Here's a way to divide the original value without using another cell to store it. (Not recommended)
Formula:
=VALUE/IF(D1,2,1)
example:
=1000/IF(D1,2,1)
Result:
However, I do not recommend this. It is still best to make use of another cell to store the original value before making calculations to it.
Also, using this formula you have to change the value from the formula and not on the cell otherwise you will replace the actual formula.
You can try array approach-
=ArrayFormula(IF(D1:D,C1:C/2,C1:C))

Google sheets: Conditional Formatting. Turn Cell C red if Cell A and Cell B are not the same value

As stated in the title, I have three cells. We'll call them A B and C. I want to turn C red if B and C do not share a value. I can't seem to get the formula quite right and was hoping someone might be able to help ^~^
Editing to be more specific to what I need, because I realized a solution to the above question will not help entirely.
Here's a link to a copy of the document I'm working with.
https://docs.google.com/spreadsheets/d/1-nR2J9a82ZDpOhWi0vee7LRxP03L96DYnML4Lawyw3g/edit#gid=449972452
So to specify what I'm trying to do:
When an ability is selected, that Trait Dependencies column is going to auto populate with any required traits as listed on another sheet. I need to turn the ability description box red if none of the Traits boxes hold the same value of the Trait Dependencies box
use on range C1:C
=$A1<>$B1
update:
=NOT(B23="Trait Name")*(NOT(REGEXMATCH(B23, TEXTJOIN("|", 1, I$43:I$80))))
Adding answer for documentation purposes:
=if(I43="None", False, if(isna(match(I43,B23:B40,0)),True, False))
Reference
IF function;
ISNA function;
MATCH function.

Conditional formatting Google sheets, if formula not used

I am trying to highlight cells which have been manually entered by using the formulatext() function. However, at the moment this is highlighting all the cells that have a different outcome (from if statements) to the first cell. Can this be changed?
(If curious my exact formula at the moment is =formulatext(E4)<>if(B4= "","",if(left(CN4,1)<>"-",if(or(D4="A",D4="B"),if(AF4<>"","DONE",CN4),if(AF4<>"","DONE",CN4)),if(or(D4="A",D4="B"),if(AF4<>"","DONE","over 48h"),if(AF4<>"","DONE","over 36h")))), the formula inside is working so no need to change it)
https://docs.google.com/spreadsheets/d/1kOJf07eoe_8tYR9a2h1iv2OIBt77xprHiGER3InGg-g/edit?usp=sharing
I hope that link works.

stop Google Sheets from reformatting/structuring cell formulas

I have some formulas in a Google Sheet cell. If I restructure the formula, like by adding new lines or spaces, for legibility, it undoes my changes. Is there a way to stop this? It seems to only happen if the cell had the formula before. If I put the formula in a new cell it doesn't do that.
This is on Enterprise G-Suite so I cannot share an example sheet.
Blank cell:
Add a structured formula:
Now if I edit the structure it does not retain the changes. In the example below, I removed a new line after TRUE.
Before hitting enter:
After hitting enter:
Also, if I add the same formula to a new/different cell, regardless of how I structure it, it'll restructure to match the one from the other cell.
Google Sheets remembers forming even upon deletion/insertion in new cell. the only way how to achieve what you ask is to introduce a change that directly affects the output calculation. if the output calculation remains the same after the change in structure/formatting then your only possible option is to use lowercase for formula. in other words, if you change your IF to if or If or iF it will register it as new change and therefore the formating will be not reverted to the previous existing state.
the less preferable but working solution would be to wrap it in some useless formula. for example:
=QUERY(IF(TRUE, "hello", "bye"))

Google Sheets - Conditional Formating - using ISBLANK to reference a cell in a different sheet

I'm new to Google Sheets so would appreciate some assistance as my research has been unsucessful.
I have created a schedule with peoples names filling time slots. I have duplicated the sheet for the same layout to be able to create a print out that shows which time slots are available using just colours so as not to distribute the names listed. To do this I want to use conditional formating and show a colour in the cells (time slots) not yet filled.
I thought that the custom formula needs be something like... conditional formating for cell E14 on sheet "Schedule Printout"... ISBLANK('Schedule!E14') but this doesn't work.
Screen grab of the Conditional Formating dialog box
I have tried several different variations. If you have any ideas please can you let me know?
Thank you
James Webb
jameswebb.uk
See if this works
=INDIRECT("Schedule!E14")=""
I believe you have to use INDIRECT in conditional formatting when you want to reference a different sheet/tab.

Resources