Legacy Values Left In Google Sheets - google-sheets

I'm currently using a Google spreadsheet that has many filter functions and many sheets, when one value is changed on one sheet the filter function on the other sheets is changed due to the condition changing and a recalculation occurs.
The bug seems to be that sometimes data from the previous filter function is left in the cells and is not cleared automatically. I have made a quick script that clears cells that have the potential to hold old data, which works but shouldn't be the case.
Has anyone else ever had this issue?
Thanks and I hope this has been explained well enough.

Related

Google Sheet auto-refresh calculated fields

I have a google sheet that has 20 columns. Most of these columns are calculated fields. Whenever I open the sheet, even the sheet hasn't been touched at all since I last opened it, it refreshes most of the columns automatically. How do I prevent this from happening? The sheet is huge so it takes forever to refresh these fields. I don't understand why it does this even when the data hasn't changed at all. Any help is appreciated.
I am hoping the sheet is only refreshed when I update the base data that is used to populate the calculated fields.
There is no way to prevent formulas from recalculating when their source data changes. Formulas automatically recalculate when they detect a change in their parameters, and when there is a lot of data and many interconnections, you get a cascading effect.
There are many things that may slow down a spreadsheet. If you had a magic way to prevent recalculation, that would only treat the symptoms but not the disease. To improve spreadsheet performance, see these optimization tips.

With zapier & Google Sheets: How do I trigger a new line in the entire spreadsheet?

I'm a bit puzzled. I can't set Zapier to trigger when a new line is added to any sheet on a Google spreadsheet. They force you to choose a specific sheet. Any way around it?
Cheers!
You will need to create a different "Zap" event for each sheet. To my knowledge, there is no way around that.
However, the fact that you think Zapier should be able to have a single Zap be triggered by multiple sheets implies a couple or things:
1.) You're not yet sure what a "Zap" is.
2.) Your data in each separate sheet is very similar. And this causes me to wonder if your overall spreadsheet setup is less than ideal. Many people wind up setting up separate sheets for data collection, whereas in most cases, data collection should only be done in one sheet setup as a standard database, while other sheets show the data in different arrangements (i.e., reports).
You haven't given much detail or provided a link to the spreadsheet. But perhaps this will prompt you to dive into understanding Zapier a bit better and reconsidering the layout of your spreadsheet(s).

How to work around GOOGLEFINANCE failures?

I need historical data of currency exchange rates for my gooogle sheet and GOOGLEFINANCE function is just what i need. Here is the sheet with GOOGLEFINANCE data I copied from my project:
https://docs.google.com/spreadsheets/d/15cFmrS2IL6QZMJORCJxU16QtWQ-2hFNLORgM5pEgY_E/edit?usp=sharing
The problem is that sometimes (pretty often actually) GOOGLEFINANCE function crashes and returns error breaking the whole project:
that's how it looks when it crashes
It returns to normal after a while but it's really disturbing.
I couldn't think of a good way to work around that glitch so I'm asking for your help.
I thought about making cells with the following logic: IF GOOGLEFINANCE value is not blank then copy it ELSE keep old value making GOOGLEFINANCE return persistent but I'm not sure it's possible to do with Google Spreadsheets formulas.
For example above if we want to make L4 cell to contain persistent value of C4 cell, I want L4 formula to be like:
=IF(ISBLANK(C4),L4,C4) but then cell will refer to itself which is not allowed.
This is not possible without Apps Script
This is because sheet functions aka formulae, don't write values to cells. If you need to persist data, then you need Apps Script.
Unfortunately, GOOGLEFINANCE cannot be accessed outside of Spreadsheet formula. From https://workspaceupdates.googleblog.com/2016/09/historical-googlefinance-data-no-longer.html
it (is) not be possible to download historical data or access it outside of Sheets using Apps Script or an API.
Workaround (with Apps Script)
However, it is possible to set up an Apps Script function to read the displayed value of a cell with getDisplayValue(), and copy that to a backup sheet, where you somehow store historical data.
You could have a setup where you have one sheet with the GOOGLEFINANCE formula, another sheet with the backup values, and a final "Report" sheet. Then you could write another Apps Script function to examine both the sheets and build an output.
Further, you could set this up to run with Time-driven triggers, and it would be quite hands off.
References and further reading
getDisplayValue()
Time-driven triggers
Apps Script Tutorials

google sheet image() function updating (slow, erratic, laggy)

Have been using google sheets for many years. Powerful and free so I like it.
Recently the image() function updating has been erratic or laggy.
Using the function in PC with many browers, chrome, firefox or edge etc, the pic failed to diplay after many minutes. Erratic, sometimes faster, sometimes longer.
However when using android phone or tablet, always display within about 10 sec. I attached an image of my spreadsheet with PC and tablet side by side
Anyone facing the same problem?
Anyway to solve it?
Is google restricting bandwith or is it a bug?
Thank u guys for reading my post:)
The fact that you use Sheets everyday has nothing to do with the way it works.
Sheets on a computer can be slow due to various reasons - large amounts of data stored, using functions which make use of other Spreadsheets and even connectivity issues.
The fact that the IMAGE function works on one device as expected and not on another one can be due to many reasons as well. Since this issue seems particular to your situation you might want to take a look onto your data from the Spreadsheet and how can you improve the performance.
What you can do to improve performance:
Try to use close-ranges when using formulas and such. For example, use A1:C3 if the data is stored in that range instead of A:C.
Certain functions can also slow the performance of a Spreadsheet, especially the so-called volatile functions such as NOW(), TODAY(), RAND() since these functions refresh every time there's a change in the Sheets.
IMPORTRANGE, IMPORTHTML, IMPORTFEED, IMPORTDATA and IMPORTXML are also known to recalculate; for the IMPORTANGE the time is of 30 minutes and for the others is 1 hour.
Reference
Sheets Limitations;
Formulas Recalculation

Disable automatic calculation for Google Spreadsheet

is it possible to specify to Google spreadsheet not to recalculate a specific sheet or number of cell everytime a modification is done ?
I have a very heavy sheet and it's very slow everytime i made a tiny modification, even if it's in an another sheet.
Seems that this feature is not supported by Google Spreadsheets. From a cursory search online the easiest way to work around this limitation is to make your formulas all conditional on a trigger. ie =IF(Boolean_Trigger,Your_formula,""). Trigger could be a cell, Named range, etc. Regards,

Resources