View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.misc
Jim Thomlinson Jim Thomlinson is offline
external usenet poster
 
Posts: 5,939
Default Cell naming using cell references (VBA? Offset?)

Give this a whirl. Run DoStuff. It Passes in the Table range that you wnat to
add the names to...

Sub DoStuff() 'Run me***
Call CreateNames(Range("A1:D4"))
End Sub

Sub CreateNames(ByVal Target As Range)
Dim rng As Range
Dim rngToTraverse As Range

With Target
Set rngToTraverse = .Parent.Range(.Cells(1).Offset(1, 1), .Cells(.Count))
End With

For Each rng In rngToTraverse
Application.Names.Add Cells(Target(1).Row, rng.Column).Value & _
Cells(rng.Row, Target(1).Column).Value, rng
Next rng
End Sub

--
HTH...

Jim Thomlinson


"StephenT" wrote:

Hello,

I have a table. I need to assign a name to each of the cells but it is
extremely tedious even using the name manager. (I also have to do it multiple
times). I have been trying to create the code in VBA but am making a
ham-fisted frustration of the job. I know this involves offsets and an
iteration but I'm afraid my skills do not extend to this. Can you help?
Here's what I want to do:

a b c ... n
1 colnameb colnamec... colnamen
2 rowname2
3 rowname3
..
M rownamem


I want the cell in b2 to be named rowname2colnameb
...the cell in c2 to be named rowname2colnamec
...the cell in NM to be named rownamemcolnamen

The tables are in different positions, so please presume I am starting the
macro with the cursor in cell b2.

Thankyou in advance!!!