This **simple** Query formula is your solution.

    =query({resp3columns!A:D;resp3columns!A2:A,resp3columns!E2:G;resp3columns!A2:A,resp3columns!H2:J},"select * where NOT Col2='' order by Col1",1)

[![split-fold-row2rows][1]][1]

In the screenshot you can see variations with different numbers of data columns (3, 4, 6)

**ADDED BONUS**  
You get your data ordered as well by `Name` or `Model` or any other column you may want.

Here is a [**Demo Spreadsheet**][2] you can play with and try out yourself.


  [1]: https://i.sstatic.net/HaXm5.png
  [2]: https://docs.google.com/spreadsheets/d/1MbaoiLzwbulWmydr-SLno9DYb00Hxw_sgoyPnpR4rGE/edit#gid=1091288436&range=A2