TGridToXLS

Sheet.UnProtect; Sheet.Range[

var

Sheet: TXLSWorksheet;

Sheet := Workbook.Sheets[ Sheet.IsProtected

Sheet.UnProtect; Sheet.Range[

This example checks whether a worksheet is protected before updating a range. Worksheet protection is independent from workbook protection

var
  Sheet: TXLSWorksheet;
begin
  Sheet := Workbook.Sheets[1];

  if Sheet.IsProtected then
    Sheet.UnProtect;

  Sheet.Range['A1', 'A1'].Value := 'Updated';
end;

].Value :=