What I want is for several Airtable basis to ‘sync’ with specific worksheets in a single Google Sheet. I have been testing “When a record matches conditions”, “Append a new row to a spreadsheet” which theoretically should work. But I also need the record to get updated in real time in the Google Sheet, and be removed from there if it’s removed from Airtable. Or, if a column in the record is updated, I would like the Google Sheet to reflect that. That does not seem to be happening. Does anyone have any ideas of what I’m doing wrong?
That is currently beyond the capabilities of Airtable’s built-in automations.
It could take several hours to setup your Integromat automation, but once you get it setup properly, it should work seamlessly forever! :slightly_smiling_face:
(If you have a budget for this project and you need to hire an expert Airtable developer & expert Integromat consultant to help you create this automation, please feel free to send me a private message or contact me through my website at ScottWorld.com.)
Please define real-time - is it within a minute or so?
Coupl’a things that come to mind but the first is to understand exactly how it is presently implemented such that it fails. You’ve shared what you want it to do, but not how it’s currently implemented. Care to share those details before I spout off? :winking_face:
Real time - doesn’t matter how fast, as long as it happens reasonably quickly (15 min?)
My automations are not working at all now. I test the steps, enter a new record that matches the conditions, and get a “ran successfully” notification, yet nothing happens in the corresponding Google Sheet.
Okay - I just set up what is ostensibly the same process and sheet and it works as advertised but not necessarily as you might expect. More on that later. At the outset, there is likely an authorization issue or a data type issue preventing the data from replicating into the target sheet. I would try deleting the automation and rebuilding just to rule out some sort of security issue.
If that doesn’t help, I would look at the selected Airtable fields as a potential source of failure. Try with just two text fields to see if that works, and then add the date field. This may demonstrate that you have a field format in Airtable that Google is;t prepared to receive, thus causing an issue.
As new records are added to the view, they are added to the sheet - my test seems fine. However, removing a record from the view will not cause the record to be removed from the sheet because this code-free automation feature only supports appending rows to sheets.
As indicated by this action, it will only serve to append new rows in the target sheet when – and only when – the record moved from not in the view, to in the view. It has no capacity to modify specific fields in the reflected sheet row. To do that, you need to take @ScottWorld suggestion concerning Integromat or use script automation. I’m certain this can be done with script, but I am uncertain if Integromat supports field-level edits in a synched Google sheet.
Possible Sheet Update Remedy
One idea to overcome the lackluster support for true sheet synching from Airtable is to always append the rows to the target sheet, but have another automation script process in the spreadsheet delete all rows every 15 minutes.
I believe this may cause the automation script to recreate the rows in the target sheet using the latest data changes made on the Airtable side. I have not tested this, so it’s purely hypothetical at this point.
The script (in Google) to delete all rows is:
// This example assumes there is a sheet named "first"
var ss = SpreadsheetApp.getActiveSpreadsheet();
var first = ss.getSheetByName("first");
This could be created in a few minutes and triggered to run every 15 minutes. This is all free on the Google side as well.
Thank you so much for the thorough response. I think I got too excited about the new Automations in Airtable and the fact is that they are not yet where I need them to be. I’ll go back to considering Zappier to see if I can make the synch work that way.