Copying an automatically created tab to another google sheet file - google-sheets

I'm working in the Google sheets on two files.
The first one is the output from a database and it's automatically refreshed every hour. When it's refreshed, it's saved as a separate tab named with the timestamp. The previous tab (the one with the data from the previous refresh) is deleted.
The second one contains some calculations based on the data from the first file. I copy the data from the first file to the second one, because I can't modify the data in the first one. Currently it's done manually by me.
My question is: is it possible to automate copying the data from the first file to the second one so that the second file will always have up to date data? If yes, can you please show how can I do it?

You can also try this (which actually a modified version given by player0)
=IMPORTRANGE("url_of_sheet_or_id"; "A1:C10")
You mention: "The first one is the output from a database"
When no sheet is defined, Google Sheets will pick up ranges from the first sheet.
Prerequisite
The most recent sheet must be the first one (far left).
If it isn't, you should "direct" your database to place the most recently created sheet as the very first one (or use a script).

use IMPORTRANGE. example:
=IMPORTRANGE("url_of_sheet_or_id"; "sheet_name!A1:C10")

Related

APPSHEET move entire data to first row when data is updated/added

In my google sheet, I created a script that everytime a new data added or edited it will automically move it to the first row in my google sheet. What I want is when everytime I update a data or add a new data using the Appsheet, it will also automatically move it to the first row in my google sheet data
It's common when people are first starting to integrate AppSheet into their workflows, that they still rely on their spreadsheet as their primary interface.
You might consider changing where you're doing the bulk of your user interaction, changing it from the spreadsheet into AppSheet itself.
Inside AppSheet, you can easily sort the views of your sheet, basing everything off of a timestamp - so the most recently updated record is always visible at the top of the table
Doing it this way means you're just displaying your data, you're not actually modifying the data.

How to disable automatic sheet renameing for linked sheets?

I have lots of sheets (tabs) which are reading data from a single tab called Tab_A. For some reason, I've created a google form and linked it to a sheet tab which is automatically called "Responses".
I need to renamed it to Tab_A and then all other sheets will be linked to the new " Tab_A" and rename the old one to "Tab_A_OLD". However, when I rename the old one to Tab_A_Old, the name in all formulas in all other sheets will be updated to "Tab_A_OLD" which means they are still linked the the old one rather than to the new one which is populated with a google form.
One solution of course is to update and rename all formulas in all other tabs and change "Tab_A_OLD" to Tab_A" which is very very time and effort consuming.
Another solution in my mind is to do a "Replace all" and replace all "Tab_A_OLD" with "Tab_A" in every sheets (TAB). Of course I didn't find such an option in google sheet !!
Is there any solution to do this in a simple way?
Thanks
I found a very simple solution:
Install a google sheet add on called Advanced Find and Replace, It does all the task. I could replace not even in a single tab, but also in whole sheet's tabs.

Sharing a created Google form with linked sheet for others to use

I have created several systems with Google Forms (and linked sheets) to log services provided and timekeeping. I would like to share these systems with other people to use as a template for their own data. Is there a way to easily do this keeping my formula's intact?
Successfully: I have found a way to share the form only as a template by copying the URL into an emailed hyperlink changing the ending from edit to copy.
Cumbersome but ok Migrant Service Log: This method does not seem to work entirely for spreadsheets. It still asks me to give them access to the original document. I can set access on the original to view only and limit the time to one day.
Unsuccessful Clock In/Out: The new "copy" of the spreadsheet is not automatically linked with new "copy" of the Forms so it does not update when a new response is added. I must link it in form. This becomes more of an issue with my sheets that have formulas based on these responses. It is now necessary for each new user to manually link and rename the sheets to make them function correctly.
Clock In/Out System (attendance purposes)
Clock In Form
Clock Out Form
MSA Sheet
Attendance Office Sheet
Migrant Service Log (team communication purposes)
Migrant Service Log Form
Migrant Service Log Sheet
I would like for them to all be user-friendly and easily shared while keeping everything confidential to the user.
if you want to keep your formulas as a secret you can set up the 2nd spreadsheet and use IMPORTRANGE formula to get data over and then just simply link the 2nd spreadsheet somewhere on the end of the form.

Publishing sheets results in all errors

I have a roster style spreadsheet from which I want to publish a few pages. I can publish most of the pages fine, but I'm having trouble with displaying the values in a few.
I've created a sheet that takes today's date and populates with the values from another sheet with today's date in its title. That way when I publish this particular sheet it will change every week, without the need to re-publish a different sheet every Monday.
The thing is, when I do publish these individual sheets every week there's no issue; but when I try and publish this automatically updating one every cell with values just contains #VALUE!, with a couple of #REF! errors.
This doesn't make sense to me, as they contain the same values. The only difference is that one has values that populate from other sheets (but even the ones that are working have some cells that update from other sheets, and they work fine!)
EDIT: When using ImportRange() to try and port the data to another sheet a few cells display: the ones only locally referencing this particular sheet, and not calling information from elsewhere.

Monitoring a google sheet for changes and validating data

Problem: Write a program that creates a spreadsheet and constantly monitors it for changes. Any row that contains "invalid data" (according to a rule defined by a regex) in one of the columns should be deleted. For example, lets say that column A must be a valid date, while all the other columns can hold arbitrary data. Then, if someone enters an invalid date into cell A5, all the data in row 5 should be removed.
Attempted solution:
The program will have to deal with a lot of data, so when i am monitoring the sheet, i would like to obtain changes made to the spreadsheet as just the change. That is, i dont want to have to request the entire spreadsheet of data every time an edit is made. The only way that i have found to obtain only edits is through google apps script, but i have not found a way to create a spreadsheet along with an apps script bound to it. Is this possible through google apis, or is there a better way to tackle this problem?
I also looked into data validations as a possible solution, but I cannot find a setting that deletes an entire row when one specific column is invalid.

Resources