D
DesertCyclist
Can anyone please tell me what might lead Excel to ignore these statements:
Worksheets(“Logâ€).Select
Range(“E4â€).Select
ActiveCell.Offset(1,0).Select
There is a “Log†worksheet, there is a cell E4 in it, and there is a cell
below it. These statements are so basic. I’ve never encountered a situation
in which Excel would ignore them, so I am at a loss to know where to even
start looking.
Here are some hopefully-relevant facts:
These statements are in a function in a module.
The function is called from a cell.
The function is executing (it hits a breakpoint).
The cell containing the function call is not in the range of cells that the
function takes as parameters (changes to which cause the function to execute).
The range of cells through which it is looping is the same as the range of
cells that the function takes as parameters (changes to which cause the
function to execute).
Here is the function:
Public Function CurrentWeight() As Single
Dim CurrentSheetName As String
CurrentSheetName = ActiveSheet.Name
Worksheets("Log").Select
Range("E4").Select
Do
If InStr("Sun Mon Tue Wed Thu Fri Sat", ActiveCell.Offset(0,
-2).Value) > 0 And ActiveCell.Value <> "" Then
CurrentWeight = ActiveCell.Value
End If
Do
ActiveCell.Offset(1, 0).Select
Loop Until InStr("Sun Mon Tue Wed Thu Fri Sat", ActiveCell.Offset(0,
-2).Value) > 0 And ActiveCell.Value = ""
Loop
Worksheets(CurrentSheetName).Select
End Function
Any help would be appreciated.
Thank you
Worksheets(“Logâ€).Select
Range(“E4â€).Select
ActiveCell.Offset(1,0).Select
There is a “Log†worksheet, there is a cell E4 in it, and there is a cell
below it. These statements are so basic. I’ve never encountered a situation
in which Excel would ignore them, so I am at a loss to know where to even
start looking.
Here are some hopefully-relevant facts:
These statements are in a function in a module.
The function is called from a cell.
The function is executing (it hits a breakpoint).
The cell containing the function call is not in the range of cells that the
function takes as parameters (changes to which cause the function to execute).
The range of cells through which it is looping is the same as the range of
cells that the function takes as parameters (changes to which cause the
function to execute).
Here is the function:
Public Function CurrentWeight() As Single
Dim CurrentSheetName As String
CurrentSheetName = ActiveSheet.Name
Worksheets("Log").Select
Range("E4").Select
Do
If InStr("Sun Mon Tue Wed Thu Fri Sat", ActiveCell.Offset(0,
-2).Value) > 0 And ActiveCell.Value <> "" Then
CurrentWeight = ActiveCell.Value
End If
Do
ActiveCell.Offset(1, 0).Select
Loop Until InStr("Sun Mon Tue Wed Thu Fri Sat", ActiveCell.Offset(0,
-2).Value) > 0 And ActiveCell.Value = ""
Loop
Worksheets(CurrentSheetName).Select
End Function
Any help would be appreciated.
Thank you