View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Carlos Carlos is offline
external usenet poster
 
Posts: 84
Default beginner ColumnsQuestion b + 1 = c how?

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