セルの書式が多すぎるため、書式を追加できません。
「セルの書式が多すぎるため、書式を追加できません。」と注意が表示された時の対処方法をご紹介します。
エラーの原因
「セルの書式が多すぎるため、書式が追加できません」と表示されるエラーの原因はスタイルに登録された書式が上限を超えてしまうことが原因です。
[ホーム]タブ > スタイル に一覧があります。
スタイルは定義された書式で、同じ書式を使いたいときなどに便利な機能です。
スタイルは登録して使うことができますが、別のブックからシートをコピーした場合などにも自動で登録されます。
コピー元とコピー先で同じスタイル名でも違うフォントだった場合などに、「スタイル名+番号」で自動登録されるため、気づかないうちにスタイルを上限数まで登録されてしまいます。
エラーの解決方法
不要なスタイルを削除することで、書式を変更することができます。
スタイルを削除するには、不要なスタイルを右クリック > 削除 と操作することで削除できます。
ただし、「セルの書式が多すぎるため、書式が追加できません。」と表示された場合は40000件近く登録されています。手作業で削除すると時間が掛かりますので以下方法で削除することをオススメします。
シートを新しいブックに移動する
対象ファイルのすべてのシートを選択して、新しいブック(空白のブック)に移動することで使用しているスタイル以外が削除されます。
手順1.すべてのシートを選択
すべてのシートを選択するには、左端のシートを選択した状態でShiftを押したまま右端のシートを選択するか、Ctrlを押しながらすべてのシートをクリックします。
手順2.シートを移動またはコピーする
すべてのシートを選択した状態で、右クリック > 「移動またはコピー(M)…」
移動先ブック名(T):(新しいブック)を選択
コピーを作成する(C)にチェックを入れてOK
コピー元で使用していたスタイル(標準2など)は残ってしまうので必要に応じて削除してください。
マクロ(VBA)でスタイルを削除
マクロ(VBA)でスタイルの削除するには『ActiveWorkbook.Styles』の[Delete]オプションを使用します。
マクロ(VBA)にて削除する場合は以下記事を参考にしてください。
https://excel-meister.com/vba/vba-delete-style/