Subscript out of range error - selecting a sheet
Why does this fail? The codename for my sheet is wsh1:
Dim c as integer c = 1 sheets ("wsh" & c).select It fails with the error message "subscript out of range. " |
Subscript out of range error - selecting a sheet
Where is the code located?
The codenaem of the sheet cannot be changed it is read only. It is usually Sheet1 and in the VBA project window would be the name not in parenthesis. To access by code name would be someithing like this Dim c as integer c = 1 sheets1.select If you are using the sheet name in parenthesis then you must have the name typed incorrectly. You could have extra spaces on the tab which may be causing the problem. "John" wrote: Why does this fail? The codename for my sheet is wsh1: Dim c as integer c = 1 sheets ("wsh" & c).select It fails with the error message "subscript out of range. " |
Subscript out of range error - selecting a sheet
The code is located in a module. This is actually a stripped down part of my
code - I'm trying to do a "for loop" and I want to loop through wsh1 through wsh24 (these are code names, not sheet names). "Joel" wrote in message ... Where is the code located? The codenaem of the sheet cannot be changed it is read only. It is usually Sheet1 and in the VBA project window would be the name not in parenthesis. To access by code name would be someithing like this Dim c as integer c = 1 sheets1.select If you are using the sheet name in parenthesis then you must have the name typed incorrectly. You could have extra spaces on the tab which may be causing the problem. "John" wrote: Why does this fail? The codename for my sheet is wsh1: Dim c as integer c = 1 sheets ("wsh" & c).select It fails with the error message "subscript out of range. " |
Subscript out of range error - selecting a sheet
Your original example didn't give us a lot to go on as to what you are
trying to do, so let me try and give you an overall approach to try out. By the way, it is almost always a bad idea to simplify your code for presentation to the newsgroups... doing so almost always forces you to return to ask us how to modify code offered to you for your actual setup. Dim ShtNum As Long Dim WS As Worksheet ...... ...... For Each WS In Worksheets If LCase(WS.Name) Like "wsh#*" Then If Mid(WS.Name, 4) <= 24 Then WS.Select ' Rest of your code goes here End If End If Next -- Rick (MVP - Excel) "John" wrote in message ... The code is located in a module. This is actually a stripped down part of my code - I'm trying to do a "for loop" and I want to loop through wsh1 through wsh24 (these are code names, not sheet names). "Joel" wrote in message ... Where is the code located? The codenaem of the sheet cannot be changed it is read only. It is usually Sheet1 and in the VBA project window would be the name not in parenthesis. To access by code name would be someithing like this Dim c as integer c = 1 sheets1.select If you are using the sheet name in parenthesis then you must have the name typed incorrectly. You could have extra spaces on the tab which may be causing the problem. "John" wrote: Why does this fail? The codename for my sheet is wsh1: Dim c as integer c = 1 sheets ("wsh" & c).select It fails with the error message "subscript out of range. " |
All times are GMT +1. The time now is 01:16 AM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com