dim FeuilleActive as sheet
Sheets est une collection de feuille : tu aurais du mettre Sheet pour définir un objet feuille, mais vu l'utilisation que tu en fais, c'est plutôt une variable String (chaîne de caractères), puisque tu y colles le nom et pas la feuille
If CheckBox1.Value = True Then 'Traitement collectif
For i = 1 To ThisWorkbook.Sheets.Count - 2
FeuilleActive = sheets(i).Name
Sheets(FeuilleActive).Visible = True
Sheets(FeuilleActive).Activate
derlign = Range("A65536").End(xlUp).Row
Range("A" & derlign + 1).Activate
ActiveCell.Value = DateTraitement
ActiveCell.Offset(0, 3).Value = 30
Next i
Else .... 'Traiteme