私は Windows 7 マシンに Office 2007 の Excel ドキュメントを持っています (この部分が重要かどうかはわかりませんが、とりあえずここに載せておきます)。これは全従業員の電話番号のリストです。新しいページを生成する必要がある場合は、ページ 2 をクリックすると、テーブルが自動的に再生成されます。
問題は、ネットワーク ドライブ上にあるため、誰かがそれを台無しにし、実際には 960,000 行を超えるデータがあると表示されてしまうことです。最後のセルにデータがあるかどうかを確認するために CTRL+END を実行し、その行と列を削除しましたが、それでも修正されませんでした。削除後に重複しているように見えます。
ドキュメント全体を再作成するのではなく、これを修正するにはどうすればよいですか?
答え1
マイクロソフトには優れたサポートドキュメントがあります。Excel の最後のセルをリセットする方法。
その文書から:
最後のセルが現在使用中のワークシート範囲外に設定される最も一般的な原因は、書式設定が多すぎることです。行と列全体を書式設定する場合、一部の種類の書式設定により、最後のセルが実際に使用されている範囲よりはるかに下または右のセルに設定される場合があります。
質問の下のコメントに基づくと、すべての行に適用されている境界線の形式が原因であるように思われます。
上記のリンクから提供されたアドインのコードを使用して、ファイル サイズを数メガバイトから数百 KB に削減しました。
答え2
また、コメント ボックスがセルから遠く離れたところまでドラッグされているコメント付きのセルがないかどうかも確認してください。スプレッドシートの 2 行目にコメント ボックスが行 7000 の近くにあるセルがあると、Excel は行 7000 をスプレッドシートの最後の行として扱うようになります。
答え3
上記のコメント投稿者と同様に、私も Excel ドキュメントに 100 万行以上の余分な行が存在するという同じ問題を抱えていました。これはコメントがセルからかなり離れた位置にあるために発生していました。このページには、ドキュメントをクリーンアップするために使用できる簡単な VBA コードがあります。その後、そのコードを削除して、コードなしでドキュメントを保存すると、問題は解決されます。https://www.extendoffice.com/documents/excel/2252-excel-reset-comment-positions.html
ALT + F11 キーを押したままにして、Microsoft Visual Basic for Applications ウィンドウを開きます。
[挿入] > [モジュール] をクリックし、次のコードをモジュール ウィンドウに貼り付けます。
VBA コード: アクティブなワークシート内のすべてのコメント位置をリセットする
1 Sub ResetComments()
2 'Update 20141110
3 Dim pComment As Comment
4 For Each pComment In Application.ActiveSheet.Comments
5 pComment.Shape.Top = pComment.Parent.Top + 5
6 pComment.Shape.Left = pComment.Parent.Offset(0, 1).Left + 5
7 Next
8 End Sub
次に、F5 キーを押してこのコードを実行すると、アクティブなワークシート内のすべてのコメントの位置が一度にリセットされます。