o nedenle ifadenize dim ss as byte satırını ekleyip format kısmını taşımanız yada metin formatında yeni bir değişken tanımlamalısınız
kodu aşağıdaki gibi düzenleyip yeniden dener misiniz?
Sub Hesapla()
Dim GSayi As Integer, ss As Byte
GSayi = 0
For ss = 1 To 31
If Controls("G" & Format(ss, "00")).Value = "D" Then
GSayi = GSayi + 1
End If
Next ss
Me.TopisGunSay = GSayi
End Sub