Stumped - What am I doing wrong?

W

wilro85

On a workbook I'm making, I'm trying to have a customizable interface
that will hide items as the user desires, however, I get an error
calling the program I want to run across sheets. Thing that bothers me
about this is I know both programs work if I run them independently. I
also know that programs can run across sheets. Where am I going wrong?

Private Sub CheckBox1_Click()
Application.ScreenUpdating = False
If CheckBox1 = True Then
Range("a18").Select
Selection.EntireRow.Hidden = False
CommandButton7.Visible = True
CALL SHEETS(\"OVERVIEW\").SPECIAL
Else
If Worksheets("overview").Range("b58").Value = 0 And
Worksheets("overview").Range("c58").Value = 0 Then
Range("a18").Select
Selection.EntireRow.Hidden = True
CommandButton7.Visible = False
CALL SHEETS(\"OVERVIEW\").SPECIAL
Else
Application.ScreenUpdating = True
MsgBox ("The object you have choosen to hide contains values and thus
can't be hidden.")
End If
End If
End Sub

*Other sheet*

Public Sub special()
If Sheets("summary").CheckBox1 = True Then
Range("a61").Select
Selection.EntireRow.Hidden = False
Else
Range("a61").Select
Selection.EntireRow.Hidden = True
End If
End Sub

*Edit - More info*

The specific error I get when I try to run the program is:

Runtime Error "1004"
Select method or Range class failed.

What does that mean?
 
R

Rowan

You don't need to call a seperate procedure to do this. You could simpl
use:

Private Sub CheckBox1_Click()
Application.ScreenUpdating = False
If CheckBox1 = True Then
Rows(18).Hidden = False
CommandButton7.Visible = True
Sheets("Overview").Rows(61).Hidden = False
Else
If Worksheets("overview").Range("b58").Value = 0 An
Worksheets("overview").Range("c58").Value = 0 Then
Rows(18).Hidden = True
CommandButton7.Visible = False
Sheets("Overview").Rows(61).Hidden = True
Else
Application.ScreenUpdating = True
MsgBox ("The object you have choosen to hide contains values and thu
can't be hidden.")
End If
End If
End Sub

Otherwise if you really want to have the seperate procedure, as it i
not worksheet event code it should be stored in a Module and not
worksheet code sheet. Add a module and change the macro to:

Public Sub special()
With Sheets("overview")
If Sheets("summary").CheckBox1 = True Then
.Range("a61").EntireRow.Hidden = False
Else
.Range("a61").EntireRow.Hidden = True
End If
End With
End Sub

Then in your Checkbox Click event you can reference it as:
Call Special

Hope this helps.
Rowa
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top