Mar 09, 2023 09:02 AM
Hello, I am trying to update an existing record with a form without it creating a new record. I have attempted this several times using automation but I am having no luck. Any suggestions?
Mar 10, 2023 04:45 AM
Form submissions will always create a new record, so the best you can do is delete the newly created record after you've used the data in it.
Do you have a Pro plan? If so, you can add a "Run a script" action and write some JavaScript that will delete the form submission once you have utilized the data in the form submission to update the existing record. There are some examples of the code that can accomplish this in the forums and you can search for it
If you do not have a Pro plan then you could attempt to use a third party tool with some JavaScript to delete the record the form submission created
Dec 07, 2023 10:06 PM
A workaround is to use a form that integrates with Airtable. We have built a form allowing you to edit a record in Airtable.
https://miniextensions.com/miniextensions-form-for-airtable/
Using a formula field, you can generate a unique URL for each record and opening this URL will allows you to update existing record.
Aug 04, 2024 01:15 AM - edited Oct 28, 2024 05:19 PM
There is a 100% free solution for accomplishing this, and it also happens to be the easiest way as well. The answer is Fillout’s advanced forms for Airtable, which allows you to update Airtable records with a form.
You can also do it natively in Airtable (for free as well), but the problem of doing it in Airtable is that Airtable forms always create new records (they never update existing records), so you’ll need to do some zany workarounds to make it happen.
So, to recap, these are your 2 ways of doing this:
1. The hard/complicated/unreliable way which is not recommended: You can have your Airtable form feed into an additional table that acts as the repository for all of your form submissions, and then you can create an automation in Airtable that finds the original record in the original table and updates the original record with the data from the form. You would also need to prefill the form if you want users to see existing data, which can get quite complex and doesn’t support attachment fields. This requires giving your users a brand new prefilled form link every time they want to update their form. You can see why most people don’t want to use this method.
2. However, the much quicker, much easier, much more elegant, much more customizable, and much more reliable & bulletproof way to have a form that updates existing Airtable records is to simply use Fillout's advanced forms for Airtable. You wouldn't even need to prefill the form because it automatically pulls in all the record data that you'd like to see on the form.
Fillout for Airtable is 100% free, and it offers over 100 advanced form features that Airtable's native forms don't offer, such as updating Airtable records from a form, displaying formulas & lookup fields & rollup fields & attachments on forms, allowing dynamic linked record filters (i.e. dynamic dropdown selections), the ability to have multi-page forms with conditional paths, the ability to create new linked records on a form, the ability to accept payments on forms, visually displaying as many fields as you want to see in a linked record selection list (including attachment fields), limiting the number of linked records that can be chosen, and much more.
p.s. If you have a budget for your project and you’d like to hire an expert Airtable consultant to help you with any of this, please feel free to contact me through my website: Airtable consulting — ScottWorld
Oct 28, 2024 01:21 PM - edited Oct 28, 2024 01:21 PM
The actual free solution - you're going to need an automation & some new fields
1. Make a new single line text field and call it 'RECID' (or whatever you want)
2. Make a new button field and use the following formula