Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hello,
I need to show a particular sheet for specific users. I'm trying to use something like:
=WILDMATCH(OSUser(),Concat(DISTINCT UserList,', ')
But it doesn't work. Do you know how could I do that?
OSUser() is my user, for example User03
The Field UserList contains all Users, for example: User01, User02, User03, User07
Thanks
Section Access;
ACCESS, USERID
X
Y
Z
Section application;
Star is *;
UserID,Tab
X, Sales
Y, Share,
....Z, *
Users with Sales access or all sheets access by
(SubStringCount(MaxString(Tab),'SALES')>0 or SubStringCount(MaxString(Tab),'*')>0)
Please refer to this thread:
You'll need to use Dollar Sign Expansion.
Also, wildmatch will return a 0 if the user is not found in the list, you'll have to put this into the 'Conditional' part of the Sheet Properties > General setting.
Hi Micro,
look at this great post, i am sure you can solve your issue,
https://www.youtube.com/watch?v=LimUIy164d4
i hope that helps
beck
Try like this
=WildMatch(OSUser(),$(=chr(39)&Concat(DISTINCT UserList,chr(39)&','&chr(39))&chr(39)))
May be this
SubStringCount('|' & Concat(DISTINCT UserList, '|,|') & '|', '|' & SubField(OSUser(), '\', -1) & '|') = 1
Hello,
Try this,
= WildMatch(OSUser(), $(=Concat( DISTINCT chr(39) & '*' & UserList & '*' & chr(39) , ', '))) >0
Hi Sunny,
You forgot to inform that UserList field names should match exactly with the OSUser i.e case sensitive.
But I didn't see that in OPs intial post that his UserList may not have correct casing? If it won't be, then I guess you are right... but something like a username, I would expect to have been copy and pasted from a database which I would expect to have correct casing....
Sunny I just mentioned it so that we will be on the safer side in case of unexpected scenario.
Cheers