9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Excel2013/2016で特定条件下でファイルが壊れる不具合と回避方法

Posted at

ファイルが壊れる事象

あるファイルを編集し、問題なく保存できるが、次に開いたときに下記の「一部の内容に問題が見つかりました。可能な限り内容を回復しますか?」のエラーが発生する。
image.png

「はい」を選択すると、下記の修復内容が表示されます。
image.png

/xl/sharedStrings.xmlの差分を取ってみると、Excelが自動で設定するフリガナのタグ構成に問題があるようです。

再現手順

  1. Excelを起動、空白のブックを作成する
  2. 任意のセルを選択し、「データ」タブメニューから「データの入力規則」->「データの入力規則」を選択する
  3. 「設定」タブの入力の種類で「リスト」を選択し、元の値に「a,b,c」(任意の文字)と入力
  4. 「エラーメッセージ」タブで「無効なデータが入力されたらエラーメッセージを表示する」のチェックを外す
  5. 「OK」ボタンでデータの入力規則ダイアログを閉じる
  6. データの入力規則を設定したセルを右クリックして「セルの書式設定」を開く
  7. 「保護」タブの「ロック」のチェックを外し、「表示しない」にチェックを入れる
  8. 「OK」ボタンでセルの書式設定ダイアログを閉じる
  9. 「校閲」タブメニューから「シートの保護」を選択
  10. 「シートの保護」のチェックはそのままで「OK」ボタンにより保護を実行する
  11. データの入力規則を設定したセルに任意の半角+漢字(例:2019年)を入力
  12. Enterで確定後、再度同じセルに対して任意の半角+漢字(例:2019年)を入力(同じ文字でも別でも構いません)
  13. ファイルを任意の場所に保存し、ファイルを閉じる
  14. 上記で保存したファイルを開くと壊れた状態となっている

確認環境

  • Windows 10 Pro 1709 64bit, Office 365 1803 (Excel 2016) 32bit
  • Windows 10 Pro 1709 64bit, Office Professional Plus 2013 32bit
  • Windows 7 Professional SP1 32bit, Office Professional Plus 2013 32bit

回避方法

どれかの条件が外れればOKなので、一番影響の無い「保護」タブの「表示しない」のチェックを外せば発生しなくなります。
そもそもこれは数式バーに数式を表示しないための設定なので、文字入力する箇所にこの設定は不要でした。

9
10
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?