Hola,
Supongo que digo una tontería, pero, ¿no te vale ya con saber el estado de cada CheckBox? Es decir, ¿para qué una variable (si es como yo lo entiendo) que guarde el estado de cada CheckBox cuando estos ya cuentan con la propiedad "Checked"?
Fíjate que el código de arriba puede resumirse en una única instrucción:
Código Delphi
[-]
gr1_Var1 := CheckBox1.Checked;