Cambia la macro por esta, debe funcionar en versión 2003 y 2007.
Private Sub CommandButton1_Click()
'Por.DAM
Set h1 = Sheets("DATOS")
h1.Cells.Clear
For Each h In Sheets
Select Case h.Name
Case "DATOS"
Case Else
For i = 2 To h.Range("A" & Rows.Count).End(xlUp).Row
If CheckBox1 Then If h.Cells(i, "B") = CheckBox1.Caption Then _
h.Rows(i).Copy h1.Range("A" & h1.Range("A" & Rows.Count).End(xlUp).Row + 1)
If CheckBox2 Then If h.Cells(i, "B") = CheckBox2.Caption Then _
h.Rows(i).Copy h1.Range("A" & h1.Range("A" & Rows.Count).End(xlUp).Row + 1)
If CheckBox3 Then If h.Cells(i, "B") = CheckBox3.Caption Then _
h.Rows(i).Copy h1.Range("A" & h1.Range("A" & Rows.Count).End(xlUp).Row + 1)
If CheckBox4 Then If h.Cells(i, "B") = CheckBox4.Caption Then _
h.Rows(i).Copy h1.Range("A" & h1.Range("A" & Rows.Count).End(xlUp).Row + 1)
If CheckBox5 Then If h.Cells(i, "B") = CheckBox5.Caption Then _
h.Rows(i).Copy h1.Range("A" & h1.Range("A" & Rows.Count).End(xlUp).Row + 1)
Next
End Select
Next
End Sub
Saludos.Dante Amor
Si es lo que necesitas.