Forum Discussion
Formula help :)
- Aug 06, 2020
Third question. Solution is bit straightforward, but perhaps works correctly.
So, in Room Allowance sheet we keep matrix like this
That's the only source for employee and room names, in all other places we reference on it.
Next is Helper sheet (could be hided) where we keep combinations of all available periods and rooms and build for each such combination list of employees allowed to book the room.
In C4
=INDEX(Booking!$C$3:$O$3,1,INT((COLUMN()-COLUMN($B$5)-1)/COUNTA(Booking!$B$4:$B$10))+1)
drag it to the right till error appears.
In C5
=INDEX(Booking!$B$4:$B$10,MOD((COLUMN()-COLUMN($B$5)-1),COUNTA(Booking!$B$4:$B$10))+1,1)
and in C6
=SORT(FILTER( 'Rooms allowance'!$B$3:$B$22, (COUNTIF(INDEX(Booking!$C$4:$O$10,MATCH(C$5,Booking!$B$4:$B$10,0),0),'Rooms allowance'!$B$3:$B$22)=0)* (INDEX('Rooms allowance'!$C$3:$O$22,0,XMATCH(C$4,'Rooms allowance'!$C$2:$O$2))="x") ))
Drag them also to the right (or select the range and CTRL+R).
Data validation for entire booking range
is with formula
=INDEX(Helper!$C$6:$CO$6,1,XMATCH(C$3&$B4,Helper!$C$4:$CO$4&Helper!$C$5:$CO$5))#
Solution is very depends on number of employees, I assumed relatively small one.
Another variant which I tried, without helper, doesn't work since data validation has 256 characters limit on formula length and now I don't see the way how to fit it.
Hi again SergeiBaklan
I think I didn't succeed in explaining it the right way. 🙂
So what I actually wanted (regarding my second question) is only a change in the way the data will be visualized in the Excel file.
So, actually I only want to be able to pick certain employees and put them into a certain room - not the opposite.
However, in addition to the first scheme, I would also like a scheme showing which rooms each employee should stay in. So it's probably some kind of transpose formula I need here? Unforntunately, I don't know how to do it.
Do you understand what I want? 🙂
Best wishes,
Maria
PS: Hope you will find a solution to my third question aswell - that would be awesome. 🙂
Third question. Solution is bit straightforward, but perhaps works correctly.
So, in Room Allowance sheet we keep matrix like this
That's the only source for employee and room names, in all other places we reference on it.
Next is Helper sheet (could be hided) where we keep combinations of all available periods and rooms and build for each such combination list of employees allowed to book the room.
In C4
=INDEX(Booking!$C$3:$O$3,1,INT((COLUMN()-COLUMN($B$5)-1)/COUNTA(Booking!$B$4:$B$10))+1)
drag it to the right till error appears.
In C5
=INDEX(Booking!$B$4:$B$10,MOD((COLUMN()-COLUMN($B$5)-1),COUNTA(Booking!$B$4:$B$10))+1,1)
and in C6
=SORT(FILTER(
'Rooms allowance'!$B$3:$B$22,
(COUNTIF(INDEX(Booking!$C$4:$O$10,MATCH(C$5,Booking!$B$4:$B$10,0),0),'Rooms allowance'!$B$3:$B$22)=0)*
(INDEX('Rooms allowance'!$C$3:$O$22,0,XMATCH(C$4,'Rooms allowance'!$C$2:$O$2))="x")
))
Drag them also to the right (or select the range and CTRL+R).
Data validation for entire booking range
is with formula
=INDEX(Helper!$C$6:$CO$6,1,XMATCH(C$3&$B4,Helper!$C$4:$CO$4&Helper!$C$5:$CO$5))#
Solution is very depends on number of employees, I assumed relatively small one.
Another variant which I tried, without helper, doesn't work since data validation has 256 characters limit on formula length and now I don't see the way how to fit it.
- mariasolhoejAug 17, 2020Copper Contributor
Thank you SO much for your help!!! Very much appreciated.
Have a nice day, and sorry for my late response.
Best regards,
Maria
- mariasolhoejAug 17, 2020Copper Contributor
Hi again SergeiBaklan
So, I worked a bit further with your nice work. 🙂
Now, I would really like if I could use your "Helper" pr. day, however be able to see one week pr. sheet (One week = Monday, Tuesday, Wednesday, Thursday, and Friday)
Ex: Employer "CATT" should be allowed to stay with "7v" Monday morning from 8-8.45 and 8.45-9.30 and with 7x Tuesday morning 8-8.45 and 8.45-9.30, and so on.... I have tried to fix the formula but it doesn't seem to accept my changes. 🙂
Do you understand what I want?
Best regards,
Maria
- SergeiBaklanAug 19, 2020Diamond Contributor
Hi Maria,
That's bit different task. As a starting point allowance shall be defined somehow, not sure how to do that better. Perhaps deformalized table as
CATT Mon 8-8.45 7v
CATT Mon 8.45-9.30 7v
CATT Mon 9.30-10.15 6c
CATT Tue 8.45-9.30 7v
etc, but it will be quite long list which hard to maintain.
Another variant create table for each person with time vs room. Or like, have no proper solution right now.
" should be allowed to stay with "7v" Monday morning from 8-8.45 and 8.45-9.30 and with 7x Tuesday morning 8-8.45 and 8.45-9.30, and so on....