作成日: 2025/07/02 最終更新日: 2025/07/02
文書種別
技術情報
詳細
シート全体を保護した上で、特定の列や行のみ編集可能にすることができます。
実装手順を以下にご紹介いたします。
1.シート全体を保護する
■サンプルコード(C#)
fpSpread1.ActiveSheet.Protect = true;
2.編集可能なセルの設定
編集を許可したい列や行には Locked プロパティに「false」を設定します。
例:すべての列を一旦編集可能に設定
■サンプルコード(C#)
fpSpread1.ActiveSheet.Columns[0, fpSpread1.ActiveSheet.Columns.Count - 1].Locked = false;
3.編集不可にしたい列・行を個別に設定
例:B列(インデックス1)と2行目(インデックス1)をロック
■サンプルコード(C#)
fpSpread1.ActiveSheet.Columns[1].Locked = true;
fpSpread1.ActiveSheet.Rows[1].Locked = true;
■ ヘッダーのグレーアウト対策
Protect プロパティに「true」を設定してシート保護を有効にすると、列・行ヘッダーがグレーアウト表示になります。これは、ヘッダーセルも保護対象となり、編集できなくなるためです。
ヘッダーの表示を元に戻すには、以下のように、ヘッダーセルの Locked プロパティを「false」に設定します。
■サンプルコード(C#)
fpSpread1.ActiveSheet.ColumnHeader.Rows[0].Locked = false;
fpSpread1.ActiveSheet.RowHeader.Columns[0].Locked = false;