Yeah, I did that before creating this post. Not helped much in my case.
But this is not a simple loop. It is a loop within the loop, so the level of complicity is higher.
For now I created a hybrid solution (AppSheet & Excel) - I will share in case anyone prefers this path, but it is not an ideal AppSheet-only solution:
Create table Periods (import to AppSheet) where an user specifies the date range to add.
Main columns used for this issue:
Period_ID
Period_start
Period_end
Create table Users_Dates (Excel only) which works as a variables. Columns:
Imoprt Start (set formulas which will take the desired dates from table Periods. In my case I just used last added row)
Import End (same as Import Start)
DateList (set formulas to calculate an array of dates. A Filter() can be a big help here).
UserID (import data about users in any way you like, for example by using IMPORTRANGE() )
Using this tutorial of one loop made by Steve I created loop.
Loop works like this:
a. User specifies range (in Periods table. Period table → Master Table in Steve’s tutorial)
b. In the background in Excel, AddDays table prepares Cartesian Join based on the variables in Users_Dates table (AddDAys table → Source Table in Steves’s tutorial).
c. All rows from AddDays are added to the Target Table which will contain all users and all dates.
For now it works, but during tests I had some issues with copying ID or overwriting records.