Hi Jason
Interesting question!.....
AFAIK you could use a cut / paste new column
approach in VBA code eg....
Columns("C:C").Cut
Columns("A:A").Insert Shift:=xlToRight
However you need to keep track of which column is which, since as soon as
you move a column the intervening column references will change as you shift
everything over to make room. Columns to the right of the first cut will
not be affected. So I would recommend that you have a reverse option that
switches everything back to 'normal' before applying a new view.
If the columns never change position - only whether the user sees them or
not. It is probably better to use a hide - unhide approach. This is far
safer than keeping track of columns moving around. In most of your examples
this is true so maybe this might be a better option. (Column ZY in your
post is not valid!)
So you could try and adapt the following.....
Sub dataview()
Columns("B:IV").EntireColumn.Hidden = True
Columns("B:D").EntireColumn.Hidden = False
Columns("G:G").EntireColumn.Hidden = False
Columns("H:H").EntireColumn.Hidden = False
End Sub
Sub dtpview()
Columns("B:IV").EntireColumn.Hidden = True
Columns("D:F").EntireColumn.Hidden = False
Columns("K:M").EntireColumn.Hidden = False
End Sub
Sub salesview()
Columns("B:IV").EntireColumn.Hidden = True
Columns("M:P").EntireColumn.Hidden = False
End Sub
--
Cheers
Nigel
wrote in message
...
Is there possibly a elegant way to allow three different users the
capability to 'rearrange' the positioning of columns in a critical
spreadsheet.
For instance, I have a spreadsheet with 15 columns, but each person wishes
to order these columns differently:
1. Data capturer view - Button
2. DTP operator view - Button
3. Salesman view - Button
Each button would have to rearrange the columns...eg:
Button 1: columns A:D, G,H,ZY
Button 2: columns: A, D,E,F, K,L,M
Button 3. columns: A, N,M,O,P
Could someone help me with this...greatly appreciated.
Thanks
Jason