How do you invert your selection of cells in excel?

J

Jon

I have groups of cells scatered at differnt parts of the sheet (saying what
the cell next to it is) selected. How do in invert my selection so that
instade of the "title" cells being selected the "data" cells are? There is no
"invert selection" in the edit menu like there is for other programs.
 
G

Gary''s Student

I am assuming that you want to move to the right rather than to the left:

Sub movsel()
Set r1 = Selection
Set rf = Nothing
For Each r In r1
If rf Is Nothing Then
Set rf = r.Offset(0, 1)
Else
Set rf = Union(rf, r.Offset(0, 1))
End If
Next
rf.Select
End Sub

if you wanted to move to the left use Offset(0,-1) instead.
 
J

Jon

Maybe I was a little to vague. Here is the problem, I have a sheet with 16
cells, 4 by 4, I have 6 cells selected using the control key and clicking.
They are randomly scattered over the 16. I want to invert so that the 6 cells
that were selected are not now and the 10 that were not, are selected. They
are not always next to each other. There is no menu that I can find that will
swap my selection. Is there a hidden menu or combination of keys to do this?
 
G

Gary''s Student

Hi Jon:

This macro does what you want:

Sub jon()

Set r1 = Selection
Set r2 = Range("A1:D4")
Set rinv = Nothing

For Each r In r2
If Intersect(r, r1) Is Nothing Then
If rinv Is Nothing Then
Set rinv = r
Else
Set rinv = Union(rinv, r)
End If
End If
Next

If rinv Is Nothing Then
Else
rinv.Select
End If
End Sub


It works on the range from A1 thru D4. Change this to suit your needs. If
you are not familiar with macros:


Macros are very easy to install and use:

1. CNTRL-F11 brings up the VBE window
2. ALT-I
ALT-M opens a fresh module
3. paste the stuff in and close the VBE window

If you save the workbook, the macro will be saved with it.


To remove the macro:

1. bring up the VBE window as above
2. clear the code out
3. close the VBE window

To learn more about macros in general, see:

http://www.mvps.org/dmcritchie/excel/getstarted.htm

Once the macro has been created you can assign a shortcut key to it.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top