Checkboxes disappear after macro is run
If you are manually invoking the print command from the preview screen, it
should close that screen and return to normal view upon completion of the
printing. However, on the chance that it does not, try inserting this at
the beginning of the second macro.
ActiveWindow.View = xlNormalView
"Jonas" wrote in message
...
Hi
I have a macro that loops through a bunch of checkboxes to see if they are
checked or not. If they are not checked the row it sits on plus the row
below
is hidden. Also the unchecked checkbox is also hidden. After this I call
on
print preview.
[code]
Sub print_checked()
Dim obj As OLEObject
Application.ScreenUpdating = False
For Each obj In ActiveSheet.OLEObjects
'first check to see if the checkbox really is a checkbox
If TypeOf obj.Object Is MSForms.CheckBox Then
'then if the checkbox is not checked i hide rows and the
checkbox itself
If obj.Object.Value = False Then
ActiveSheet.Rows(obj.TopLeftCell.row).EntireRow.Hi dden =
True
ActiveSheet.Rows(obj.TopLeftCell.row + 1).EntireRow.Hidden
=
True
obj.Visible = False
End If
End If
Next obj
Application.ScreenUpdating = True
ActiveWindow.SelectedSheets.PrintPreview
End Sub
When printing is done I wish to restore the sheet to its orginal look with
all rows and checkboxes visible again. Therefore I have this code:
Code:
Sub restore_from_print()
Dim obj As OLEObject
Application.ScreenUpdating = False
For Each obj In ActiveSheet.OLEObjects
If TypeOf obj.Object Is MSForms.CheckBox Then
If obj.Object.Value = False Then
ActiveSheet.Rows(obj.TopLeftCell.row).EntireRow.Hi dden =
False
ActiveSheet.Rows(obj.TopLeftCell.row + 1).EntireRow.Hidden
=
False
obj.Visible = True
End If
End If
Next obj
Application.ScreenUpdating = True
End Sub
BUT neither the rows or the checkboxes get visible, at least not all of
them. Sometimes it seems a couple of rows are shown. If I run the code
without calling on print preview the restore-code seems to work fine. ?!
What am I doing wrong here?
Regards Jonas
|