Transpose form output in Coda

From spreadsheet to tables

Christiaan Huizer
3 min readJan 29, 2024

--

Forms play an important role in data gathering. Most of the time I use Coda forms. In the community you notice changing preferences for the best form builder out there. This one is about Fillout.com . In general external form builders allow for more, like branching.

Branching is a feature that allows you to create different paths or scenarios in your online form based on the responses to specific questions. For example, you can ask the user to choose their favorite sport and then show them a different question depending on their choice. Branching can help you make your online form more relevant, personalized, and engaging for your users (source: AI).

No matter how long or short your form is, the outcome of a form in Coda results in a table with as many columns as there are questions (maybe plus one to store the id of the filled out form).

When you ask for the people who want to make a trip together and they fill out per person their full name, gender and birthday and you only provide it for three people you have 3 columns for the name data, 3 for the gender data and 3 date fields for the birthday.

In a standard table you should have drie columns: name, gender and birthdate and per person one row.

This simple example shows the friction between form output and Coda tables. I guess that the Coda team is aware of this issue, at least they could be since I have written about it previously.

The solution is not complicated. You have to transpose values. In our example we understand that we have to group alike items to distribute them over rows. I wonder if Coda will be able to deploy AI in suggesting which columns should be taken together as part of an action. Anyway, this seems not for anytime soon. The action required is straightforward. You make a list of alike values via something as in a helper column and you do that for all alike values. This is for people.

ListCombine(person1, person2, person3)

Next you count the values and you distribute them via AddRow() over the respective rows: 3 people you have 3 rows, 4 people 4 rows, one person per row. Note that you should find a way — matching your specific use case — to delete orphaned rows, thus rows that lack essential information. This is due to the limited options the Coda forms present. You cannot create a warning based on an other field filled out or not. Based on omissions like this, some have the impression that in general the forms are poorly designed. Nevertheless using Coda forms is easier than any other (external) alternative. I made some suggestions, but I don’t have the idea that they ever got to Coda. Maybe they did, but my impression is that Coda is more concerned about releasing new features than polishing existing ones.

In the template below I show how it goes.

I hope this article was informative and helpful. Did it help you to solve a problem you unlike would have solved other ways? What about a donation?

My name is Christiaan, and I regularly blog about Coda. While this article is free, my professional services (including consultations) are not, but I’m always happy to chat and explore potential solutions. You can find my free contributions in the Coda Community and on X. The Coda Community is a fantastic resource for free insights, especially when you share a sample doc.

--

--

Christiaan Huizer
Christiaan Huizer

Written by Christiaan Huizer

I write about how to Coda . You find blogs for beginners and experienced makers. I publish about 1 / week. Welcome!

No responses yet