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 Platform Community / Forums / Power Automate / How do I remove userna...
Power Automate
Unanswered

How do I remove usernames from Microsoft Forms attachments

(0) ShareShare
ReportReport
Posted on by 10

Hi everyone, 

 

I've created an MS form to capture photo submissions but when I go to download the files it adds the name of the person who submitted the form/attachment in the file name. So instead of the file name reading "Supermarket" it is labelled as "Supermarket_Smith_John". 

 

I've created a cloud flow to transfer data from the form onto a SharePoint list. Is there somewhere on my flow where I can input an action to remove the username from the file name? 

Please note that I am a complete novice so you'll have to explain to me in simple terms 🙂 

I've also attached a screenshot of my process flow.

Sayyied2022_1-1660907191046.png

 

Thanks

Sayyied

 

Categories:
I have the same question (0)
  • MarconettiMarco Profile Picture
    3,812 Super User 2024 Season 1 on at

    Hello @Sayyied2022 ,

    I've replicated the issue for your reference using a Compose action in which I've put your file name:

    MarconettiMarco_0-1660908249683.png

    Please add another "Compose" action in which add the following expression:

    trim(first(split(outputs('Compose'),'_')))

     

    If I have answered your question, please mark my post as Solved.
    If you like my response, please give it a Thumbs Up.

    BR,

    Marco

  • Sayyied2022 Profile Picture
    10 on at

    Hi @MarconettiMarco 

     

    Thanks for the speedy response. Unfortunately the images submitted will have different file names so what dynamic content or expression should I enter in the first compose action box?

     

    Sayyied2022_0-1660910081960.png

    Sayyied

  • MarconettiMarco Profile Picture
    3,812 Super User 2024 Season 1 on at

    Hello @Sayyied2022 ,

    my Compose action represents only an example.

    You can directly put the "trim" expression in the related "Create item" action field, replacing "outputs('Compose')" with the question grabbed from Forms.

     

    If I have answered your question, please mark my post as Solved.
    If you like my response, please give it a Thumbs Up.

    BR,

    Marco

  • MarconettiMarco Profile Picture
    3,812 Super User 2024 Season 1 on at

    @Sayyied2022 ,

    like this:

    MarconettiMarco_0-1660910462595.png

    trim(first(split(outputs('Get_response_details')?['body/ref24e6486aa24a05ac15e6313beb66b8'],'_')))

    Trim.gif

     

    If I have answered your question, please mark my post as Solved.
    If you like my response, please give it a Thumbs Up.

    BR,

    Marco

  • Sayyied2022 Profile Picture
    10 on at

    Thanks @MarconettiMarco 

     

    I've followed the instructions as you highlighted above but it's still not working 😞 

    I enter the expression trim(first(split(,'_'))) and I select the 'Name' dynamic content in between ( and , 

    This results in the following expression: 

    trim(first(split(outputs('Create_item')?['body/{Name}'],'_')))

    Sayyied2022_0-1660912616972.png

    I noticed your box is blue but mine is purple (not too sure if this makes a difference): 

     

    Sayyied2022_0-1660913192553.png

     
     
     
     
     
     

    For context, on the MS forms I built out there is a 'name' field but that doesn't automatically rename the file or anything. On the MS forms I ask people to rename the file prior to uploading any attachments. A question is included in the form asking for confirmation that they've done this and they have to check a button as confirmation. 

     

    Hope that made sense. Do forgive me if this is annoying. I don't work in IT so this is all new to me. 

     

    Sayyied

  • MarconettiMarco Profile Picture
    3,812 Super User 2024 Season 1 on at

    ok @Sayyied2022 ,

    no worries, from where are you grabbing the incorrect file name? From the "Get response details" action?

     

    BR,

    Marco

  • Sayyied2022 Profile Picture
    10 on at

    Here are all the dynamic content options available to me: 

     

    Sayyied2022_0-1660914966091.png

    I have previously tested the 'Upload photographs' option located under 'Dynamic content'. 

     

    Is there an expression you can send me that I can just copy and paste? 

     

    Btw I'm not too sure where that 'name' option has disappeared to. I'm referencing what was seen in my previous message. 

  • MarconettiMarco Profile Picture
    3,812 Super User 2024 Season 1 on at

    Hello @Sayyied2022 ,

    I don't know how is build your Forms. Anyhow I think you should use the "Please reformat..." value, am I right?

     

    BR,

    Marco

  • Sayyied2022 Profile Picture
    10 on at

    Hi @MarconettiMarco 

     

    So far I've tried using the 'Upload photographs', 'Resource data', 'Please reformat...' and 'Resource data' Dynamic Content within the expression you highlighted above, but alas no luck. 

     

    Is there any other solution I can try? 

     

    For context, my MS forms is set up as below. 

     

    1. Please type in subject's name

    - Text box answer

    2. Please rename each file in the following convention (Surname, First Name) and check the button below to confirm. 

    - Button

    3. Is this an urgent request?

    - Yes/No

    4. If so please confirm your deadline. 

    - Date

    5. Upload photographs

    - Upload button

    **Submit**

  • Cayshin Profile Picture
    338 on at

    @Sayyied2022 

    So I did some testing and learned that the dynamic content that holds the filename is actually a string list that contains other data.

    Cayshin_1-1660933933652.png

     

    Cayshin_0-1660933870600.png

     

    For MarconettiMarco's suggestion to work, we need to extract the filename from that content. Here is an expression you can use to do that (replace the bold section with your dynamic content. You may need to do some trial and error to find the right one. Ex. dump them all into a compose, run it, check the results to see which one has the data you want):

    json(outputs('Get_response_details')?['body/r4550c900756e412eb445dac014bc7d43'])[0]['name']

     

    With the expression, we're converting the string list to a JSON array. The [0] means we're selecting the first (and in this case, only) "row" of data from the array, then the ['name'] means we're selecting the name field which holds our filename.

     

    So now that we have extracted the filename, I'd like to make a small change to MarnettiMacro's code. He's suggesting to perform a split at each occurrence of an underscore ("_") then selecting the first element returned by that split. But what if the person submitting a photo already has/puts their own underscores in the filename? Then we're going to be missing part of the filename. So in actually, we only want to remove everything after the last underscore (but keep the file extension).

     

    Here's an expression that will remove everything (except the file extension) after the last underscore:

    replace(outputs('Compose'), concat('_', last(split(outputs('Compose'),'_'))), concat('.',last(split(outputs('Compose'),'.'))))
     
    In the above expression above, we're identifying everything after that's after last underscore, then replacing it with just file extension. The concats are there to add the in the little bit of text that got lost through the splitting.
    Cayshin_2-1660935575861.png

     

     

    There may be other ways to accomplish the same as the expression above, but this should work for your purposes.

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 June Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Automate

#1
David_MA Profile Picture

David_MA 229 Super User 2026 Season 1

#2
11manish Profile Picture

11manish 227

#3
Haque Profile Picture

Haque 181

Last 30 days Overall leaderboard