![]() |
Looping thru columns beyond Z
Public Sub Evaluate ()
Dim R As Single Dim C As Integer Range("i11").Select For R = 11 To 15 For C = 9 To 108 '100 Columns Cells(R, C).Value = _ Evaluate("=SUMPRODUCT(COUNTIF(" & Chr(C + 64) & "$2: _ " & Chr(C + 64) & "$7,$C" & R & ":$H" & R & "))") Next C Next R End Sub The procedure above gives correct results only out to Col Z. After that, things get weird. I know it it because of the letter column reference but I don't know how to fix it. The function below is supposed to help but I don't know how to use it. Private Function strColid(jColNo As Long) As String ' returns column name/id of colno strWhere = "strColid" ' If jColNo 0 And jColNo <= 256 Then If jColNo < 27 Then strColid = Chr$(((jColNo - 1) Mod 26) + 65) Else strColid = Chr$(64 + Int((jColNo - 1) / 26)) & Chr$(((jColNo - 1) Mod 26) + 65) End If Else strColid = "#N/A" End If End Function |
Looping thru columns beyond Z
Joh
Tr Cells(R, C).Value = Evaluate("=sumproduct( countif( " & Cells(2, C).Address & ":" & Cells(7, C).Address & "," & Cells(R, 3).Address & ":" & Cells(R, 7).Address & ") ) " Ton ----- John Pierce wrote: ---- Public Sub Evaluate ( Dim R As Singl Dim C As Intege Range("i11").Selec For R = 11 To 15 For C = 9 To 108 '100 Column Cells(R, C).Value = Evaluate("=SUMPRODUCT(COUNTIF(" & Chr(C + 64) & "$2: " & Chr(C + 64) & "$7,$C" & R & ":$H" & R & "))" Next Next End Su The procedure above gives correct results only out to Col Z After that, things get weird. I know it it because of the lette column reference but I don't know how to fix it. The functio below is supposed to help but I don't know how to use it Private Function strColid(jColNo As Long) As Strin ' returns column name/id of coln strWhere = "strColid If jColNo 0 And jColNo <= 256 The If jColNo < 27 The strColid = Chr$(((jColNo - 1) Mod 26) + 65 Els strColid = Chr$(64 + Int((jColNo - 1) / 26)) Chr$(((jColNo - 1) Mod 26) + 65 End I Els strColid = "#N/A End I End Functio |
Looping thru columns beyond Z
Tony,
Thanks for the solution. It worked perfectly for me. JohnSCPierce *** Sent via Developersdex http://www.developersdex.com *** Don't just participate in USENET...get rewarded for it! |
All times are GMT +1. The time now is 03:52 PM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com