Hi,
I think it would be much easier if you turn into "matrix" notation. For
example, instead of referring to cells like this: "A1", refer to them like
this .Cells(1,1). This way you can `sum' columns. Otherwise, you could design
a function that maps letters to columns using the fact that every char has
its correspondign representation in ASCII code. For example, in one
application I used the following code to build cell formulas (like $A$1
+$A209, $B$1 +$B209, etc.).
Option Explicit
Public Function FirmToLetter(Firm As Long)
If Firm = 1 Then
FirmToLetter = Chr(66)
ElseIf 2 <= Firm And Firm < 19 Then
FirmToLetter = Chr(72 + Firm)
ElseIf 19 <= Firm And Firm < 45 Then
FirmToLetter = "A" & Chr(46 + Firm)
ElseIf 45 <= Firm And Firm < 71 Then
FirmToLetter = "B" & Chr(20 + Firm)
ElseIf 71 <= Firm And Firm < 97 Then
FirmToLetter = "C" & Chr(-6 + Firm)
ElseIf 97 <= Firm And Firm < 123 Then
FirmToLetter = "D" & Chr(-32 + Firm)
ElseIf 123 <= Firm And Firm < 149 Then
FirmToLetter = "E" & Chr(-58 + Firm)
ElseIf 149 <= Firm And Firm < 175 Then
FirmToLetter = "F" & Chr(-84 + Firm)
ElseIf 175 <= Firm And Firm < 201 Then
FirmToLetter = "G" & Chr(-110 + Firm)
ElseIf 201 <= Firm And Firm < 227 Then
FirmToLetter = "H" & Chr(-136 + Firm)
ElseIf 227 <= Firm And Firm < 249 Then
FirmToLetter = "I" & Chr(-162 + Firm)
Else
Call MsgBox("That number of firms exceeds Excel's number of columns!")
Exit Function
End If
End Function
--
Carlos
"Paul Isaak" wrote:
Forgive me, I'm very new to VBA for Excel
I want to use a for next loop to cycle through data in columns, but how do
I add one to the current column?
IE
A + 1 = B
I was pretty proud of myself when I made it work with rows, but the columns
have me stumped.
Paul
--
__________________________________
The Comedy & Juggling of Paul Isaak
http://www.funnyjuggler.com