web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Apps
Answered

Looking For Advice

(0) ShareShare
ReportReport
Posted on by 86

Hi, all,

 

I'm tasked with making a huge SharePoint form in Power Apps (134 list columns!).  

 

All the columns are either repeated status drop-downs with the same choice, notes fields, or descriptive, static info.  

 

See attached mock-up.

 

My normal approach would be to create a SharePoint list with 134 columns (Status 1a, notes 1a, Status 1b, notes 1b, etc.).  However, I was wondering if anyone has insight into a simpler, more streamlined approach, or a link to a page/video, or anything else I could look into.

 

Any insight would be helpful.

Categories:
  • Ami K Profile Picture
    15,689 Super User 2024 Season 1 on at

    @CatalinaBP - obviously I would not recommend creating a SharePoint List with 134 columns (which would be  ridiculous).

     

    Unfortunately, the way I would approach this requires a significant number of steps and solid foundational knowledge of different functions and controls.

     

    This will be difficult to walk through in a forum post, but to give you a sense of direction:

     

    Firstly, I would unpivot your static SharePoint List schema so that your "areas" are repeated are across rows, and your repeating columns are created once across columns (the green table in the image). This would eliminate the need for 134 columns.

    Amik_0-1694127031612.png

     

    Secondly, I would create a "manual" Table using the Table function to recreate the 67 row schema of your SharePoint List and populate existing values in that SharePoint list. For example:

     

    Table(
     {
     'Reporting Period': "2023-2024",
    	Category: "A",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
     'Reporting Period': "2023-2024",
    	Category: "A",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
     
    	'Reporting Period': "2023-2024",
    	Category: "A",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
    	'Reporting Period': "2023-2024",
     Category: "B",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
    	'Reporting Period': "2023-2024",
     Category: "B",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
    	'Reporting Period': "2023-2024",
     Category: "B",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
    	'Reporting Period': "2023-2024",
     Category: "C",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
    	'Reporting Period': "2023-2024",
     Category: "C",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     },
     {
    	'Reporting Period': "2023-2024",
     Category: "C",
     Status: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Status
     ),
     Description: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Description
     ),
     Notes: LookUp(
     'Your List',
     'Area Name' = Dropdown1.Selected.Value && 'Some Other Unique Identifier' = Dropdown12.Selected.Value,
     Notes
     )
     }
    )

     

    Note it is very likely the above will yield performance issues, but these can be managed later.

     

    Thirdly, I would create a single Form. The Default property should be your SharePoint List, and the Item property should be a LookUp back to your data source based on the selected Gallery Item. E.g.

     

    LookUp(
     'Your Data', 
     Area = Gallery1.Selected.Area && 'Reporting Period' = Gallery1.Selected.'Reporting Period'
    )

     

    ------------------------------------------------------------------------------------------------------------------------------

     

    If I have answered your question, please mark your post as Solved. Remember, you can accept more than one post as a solution.

    If you like my response, please give it a Thumbs Up.

    Imran-Ami Khan

     

  • CatalinaBP Profile Picture
    86 on at

    @Amik 

     

    Thank you so much for taking the time to answer with such detail and thought.  You have no idea how grateful I am.

     

    I'm not going to pretend to understand all of the code, but I know enough to see where you are going with this, and I like it.  

     

    I do like the idea of changing the SharePoint list schema to be more user-friendly, and less column-heavy.  I was thinking of making several linked tables and displaying all in Power Apps galleries.  It would still be column-heavy, but users will have to work from the form and not the list, which is OK with me.

     

    My ideas are nowhere near as elegant as your solution, but I will keep your post at hand for version 2.0.

     

    Again, thank you so much.  

     

     

  • Verified answer
    Ami K Profile Picture
    15,689 Super User 2024 Season 1 on at

    @CatalinaBP you're welcome.

    I recently experienced a similar scenario to yours. We had an Excel file with a Form which contained 20 different fields, and the Form was duplicated across 10 sheets (circa 200 fields).

     

    Given each Excel sheet contained the same static Form, with the only differential being the Department Name, I wanted to avoid creating 10 Power Apps Forms per sheet and 10 Power Apps Galleries.

     

    Feel free to @me in future posts when thinking about version 2.0, and remember accept the solution if you want to close this thread.

     

    ------------------------------------------------------------------------------------------------------------------------------

     

    If I have answered your question, please mark your post as Solved. Remember, you can accept more than one post as a solution.

    If you like my response, please give it a Thumbs Up.

    Imran-Ami Khan

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Season of Sharing Community Challenge Winners!

Congratulations to our community stars!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Congratulations to the July Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Apps

#1
11manish Profile Picture

11manish 411 Super User 2026 Season 2

#2
Mohsin Ali Profile Picture

Mohsin Ali 338

#3
WarrenBelz Profile Picture

WarrenBelz 256 Most Valuable Professional

Last 30 days Overall leaderboard