Just to let you know, I emailed you revisions so that it will accommodate expansion in names of managers, people under each manager, and a database to pull data from. I also changed from Data Validation to filling all the cells.
I managed to change this to make it more flexible. I added another worksheet, named "Base" that will house your main data.
1. Names and Passwords will continue on Admin sheet in columns A and B. I defined a dynamic range to accommodate additions without changing names:
LName =OFFSET(Admin!$A$1,0,0,COUNTA(Admin!$A:$A),1)
PWList =OFFSET(Admin!$A$1,0,0,COUNTA(Admin!$A:$A),2)
2. Each name then is presented in a separate column with people underneath each, also using dynamic names to accommodate more people:
AAAAList =OFFSET(Admin!$H$2,0,0,COUNTA(Admin!$H:$H)-1,1)
ABCDList =OFFSET(Admin!$I$2,0,0,COUNTA(Admin!$I:$I)-1,1)
BBBBList =OFFSET(Admin!$J$2,0,0,COUNTA(Admin!$J:$J)-1,1)
JohnsonList =OFFSET(Admin!$K$2,0,0,COUNTA(Admin!$K:$K)-1,1)
PeterList =OFFSET(Admin!$L$2,0,0,COUNTA(Admin!$L:$L)-1,1)
3. If you add a new manager, then add it in column A Ralph), and after the last used column (i.e. after PeterList). Then add one new dynamic range, using these formulas (i.e. RalphList =OFFSET(Admin!$M$2,0,0,COUNTA(Admin!$M:$M)-1,1)
4. I changed the macros so that it will put the names in Column B, starting with B4, and fill down as appropriate (no longer Data Validation dropdown in B3). Then I added some column headings in row 3 (i.e. Category 1, Category2...). These refer to the columns in the new worksheet "Base"; the full data is named dynamically
myDataBase =OFFSET(Base!$A$1,0,0,COUNTA(Base!$A:$A),COUNTA(Base!$1:$1))
Thus, you can add columns as needed and will always be in the data. be sure to include new columns on the ShowData worksheet
That will be the basis for pulling data into the ShowData worksheet. You can set up formulas and then have the macro place them each time you run the program. Right now the "end" macro clears all cells in the dynamic named range,
DataList =OFFSET(ShowData!$B$4,0,0,COUNTA(ShowData!$B:$B)-2,COUNTA(ShowData!$3:$3))
That way, it will always be cleared. Another approach might be to hide those columns with formulas always present, and then use a macro to hide the columns, until the next login, and then have the login macro also unhide the columns.
At least you should have a workable solution.
HTH