Function for "current user" to use in formula?

Jamie Bedford
Jamie Bedford โœญโœญโœญโœญ

Good morning,

Is there a function of some sort that I can use in formulas that evaluates to the "currently logged in user"?

Use case: I have a Sheet that that has an Assigned To column and a Consult With column, both of which are multi-select Person columns. The Sheet also has a Status column. I'd like to create a Filter on this Sheet that shows "Open" (i.e., not Complete) Status rows where the Current User is in either the Assigned To or Consult With columns.

I can't figure out how to do this with the built-in Filter functionality because it cannot do complex AND/OR logic โ€” it's either all conditions match or any conditions match, but not a combo. Filters also cannot do the "inverse" resultset like Reports can, so I don't think I can do an anti-filter for this Sheet filter.

I assumed this meant I should create a Helper column to do the logic separately in a column, but I don't see a way to evaluate against whoever the "current user" is.

I've searched thru docs and a bunch of old forum posts, but must be looking in the wrong places because I haven't found anything that offers a solution. (I'm on a Gov tenant, btw, if that matters.)

Thanks!

Jamie

Answers

  • Ape_Man819
    Ape_Man819 โœญโœญโœญโœญ

    Think this would/should work.

    Steps to Create the Filter:

    1. Open your sheetย in Smartsheet (web version).
    2. Click on theย Filterย icon (funnel symbol) in the toolbar.
    3. Clickย + New Filter.
    4. Give your filter a name (e.g., โ€œMy Open Tasksโ€).

    Add the following conditions:

    Condition 1:

    • Column:ย Status
    • Condition:ย is not
    • Value:ย Complete

    Condition 2:

    • Column:ย Assigned To
    • Condition:ย has any of
    • Value:ย Current User

    Condition 3:

    • Column:ย Consult With
    • Condition:ย has any of
    • Value:ย Current User

    Combine Conditions:

    • Change the logic fromย "All conditions must be true"ย toย "At least one condition must be true"ย for theย Assigned Toย andย Consult Withย conditions.
    • So the logic should be:
      • Status is not Completeย AND
      • (Assigned To has Current Userย ORย Consult With has Current User)

    Smartsheet doesnโ€™t support nested logic directly in filters, but you can work around this by:

    1. Creating aย helper columnย (e.g., โ€œUser Involvedโ€) with a formula like:

    =IF(OR(HAS([Assigned To]@row, USER ()), HAS([Consult With]@row, USER ())), 1, 0)@row, USER

    2. Then filter where:

    1. Status is not Complete
    2. User Involved = 1
  • Andrรฉe Starรฅ
    Andrรฉe Starรฅ Community Champion

    Hi,

    I hope you're well and safe!

    Unfortunately, as far as I know, it's not possible now, but it's an excellentย idea!

    Pleaseย submit this asย a Product Feedback or Idea (If it hasn't been added already) when you have a moment.

    I hope that helps!

    Be safe, and have a fantastic day!

    Best,

    Andrรฉe Starรฅ | Smartsheet Expert Consultant & Partner / CEO @ WORK BOLD

    โœ… Did my comment(s) help/answer your question or solve your problem? Please support the Community and me byย marking it - Insightful ๐Ÿ’ก- Vote Up โฌ†๏ธ - Awesome โค๏ธ - or/and as the accepted answer. It will make it easier for others to find a solution or help to answer! I appreciate it, thanks!

    SMARTSHEET EXPERT CONSULTANT & PARTNER

    Andrรฉe Starรฅ | Workflow Consultant / CEO @ WORK BOLD

    W: www.workbold.com | E: andree@workbold.com | P: +46 (0) - 72 - 510 99 35

    Feel free to contact me for help with Smartsheet, integrations, general workflow advice, or anything else.

  • Jamie Bedford
    Jamie Bedford โœญโœญโœญโœญ
    edited 05/19/25

    I just submitted a Feedback Idea โ€” feel free to upvote it if you think this would be useful functionality:

    Function() or @argument for "currently logged in user" for use in Sheet formulas โ€” Smartsheet Community

    And yeah, @Ape_Man819's suggestion looks good, but seems like it might just be AI generated without having actually tested it? The suggested "USER()" function is exactly what I'm looking for, but it does not actually exist:

    https://help.smartsheet.com/function/user โ€” 404 not found

  • Andrรฉe Starรฅ
    Andrรฉe Starรฅ Community Champion

    Excellent!

    Upvoted! โฌ†๏ธ

    โœ… Remember! Did my comment(s) help/answer your question or solve your problem? Please support the Community and me byย marking it - Insightful ๐Ÿ’ก- Vote Up โฌ†๏ธ - Awesome โค๏ธ - or/and as the accepted answer. It will make it easier for others to find a solution or help to answer! I appreciate it, thanks!

    SMARTSHEET EXPERT CONSULTANT & PARTNER

    Andrรฉe Starรฅ | Workflow Consultant / CEO @ WORK BOLD

    W: www.workbold.com | E: andree@workbold.com | P: +46 (0) - 72 - 510 99 35

    Feel free to contact me for help with Smartsheet, integrations, general workflow advice, or anything else.

  • jmyzk_cloudsmart_jp
    jmyzk_cloudsmart_jp Community Champion
    edited 05/25/25

    Hi @Jamie Bedford

    Great question โ€” you're definitely not alone in wanting this kind of dynamic filtering based on the currently logged-in user. Here's a summary of what is possible today and the limitations that remain:

    1. No Built-In Formula for Current User
    As you've already confirmed by @Paul Newcome, there is currently no USER() function in Smartsheet formulas that evaluates to the current viewer. So while your idea makes total sense, there's no native way to check if the current user is in [Assigned To] or [Consult With] using formulas alone.

    2. Filter Workaround with Helper Column
    A semi-manual workaround is to create a helper checkbox column to pre-flag the rows for each user. For example:

    https://app.smartsheet.com/b/publish?EQBCT=9a0cdef45cf9493585c484ba0ac33fe5 (The image shown is from Demo Cloudsmart's perspective)

    image.png

    Create a filter like "Not Current User"

    Manually check rows for yourself in the helper column based on that filter

    image.png

    Then apply a second filter, "Current User", using the condition Helper is not checked to remove other rows.

    (To make it easier to focus on open tasks, apply conditional formatting to automatically strike through rows where Status = Complete. This helps quickly distinguish open from completed work, even when complex filters arenโ€™t possible.)

    image.png

    This works for your own view, but as you mentioned, it's not scalable โ€” you'd need one helper column per user (e.g., Not Current User - Juni, Not Current User - Demo, etc.). Definitely not elegant for a multi-user sheet.

    3. Using Reports Instead
    If your goal is to have a dynamic view per user, a Report is currently the best Smartsheet-native option. Reports can filter by "Current User" in contact columns like [Assigned To] or [Consult With] and combine AND/OR logic more flexibly.

    https://app.smartsheet.com/b/publish?EQBCT=46fdeb23cf7f44bd8e8c842b18fc6580

    image.png

    4. API Workarounds and OAuth Note
    There is a Get Current User endpoint in the Smartsheet API, but it will always return your identity based on the token you're using. So if you want to dynamically retrieve someone elseโ€™s identity (i.e., whoever is viewing), you'd need to set up OAuth and let each user authenticate. This allows you to use their token to fetch their identity programmatically, but setting up OAuth is complex and outside typical sheet usage.

    So yes, your conclusion is spot on:

    We still need the new feature @Andrรฉe Starรฅ suggested.

    And thank you for submitting the feedback idea! Iโ€™ve upvoted it and definitely encourage others to do the same. A built-in CURRENT_USER() formula function would open up a lot of powerful use cases.

  • Jamie Bedford
    Jamie Bedford โœญโœญโœญโœญ

    Thanks, @jmyzk_cloudsmart_jp!

    1, 2 and 4 are kind of non-starters for me for various reasons (most of which you mentioned), but using a Report instead is the closest I've come to what I'm actually trying to do.

    The main problem with the Report approach is that Reports lack the "include parent rows" functionality that Sheet Filters offer, which means that the task and subtask level rows lose context of where they belong in the overall scope.

    If there's a workaround for that, then Reports could potentially be a solutionโ€ฆ Do you have a recommendation for that? I again assume I'd need some kind of magic Helper column that I could include in the Report filters, but it feels like it'd need to be kind of recursive / self-referential or something, and that kind of formula is not my expertiseโ€ฆ

  • jmyzk_cloudsmart_jp
    jmyzk_cloudsmart_jp Community Champion

    Hi @Jamie Bedford

    Using a helper column, such as Breadcrumbs, is a standard practice in this case.

    =JOIN(ANCESTORS([Task Name]@row), "> ")
    

    https://app.smartsheet.com/b/publish?EQBCT=9a0cdef45cf9493585c484ba0ac33fe5

    image.png

    Then, use the column in the report.

    image.png
  • Jamie Bedford
    Jamie Bedford โœญโœญโœญโœญ

    Thank you - that's useful! It's not as visually useful or as easy to understand at a glance, thoughโ€ฆ Having the same functionality exist in Reports as exists in Sheets to "include parent rows" would be far preferable to keep the visual style consistent. I've upvoted an Idea or two that seem to have been asking for this for months/years, but I'll use this in my Report for the time being.

Help Article Resources

Want to practice working with formulas directly in Smartsheet?

Check out the Formula Handbook template!