• ベストアンサー

いきなり1000KBから7000KBになった。

エクセル2010 win7です。 元々1000KBくらいのファイルを使っていたのですが いきなり7000KBになってしまいました。 シートは10枚くらいで, 1つのシートに1000行くらいデータが入ってます。 このファイルは半年くらい使い続けていて、毎日データを追加していました。 なのに今日保存をしたらいきなり7000KBになり、 シート内で下にスクロールしても画面がかわりません。 コピーして他ブックに貼り付けようとしてもエラーになるかフリーズします。 vba付きファイルですが、オブジェクトを挿入したりする動作はありません。 いきなりこんなことが起こるなんてありえますか?

質問者が選んだベストアンサー

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

マクロ(VBA)で挿入を繰り返してたらありうると思います。 セルA1、A2、A3、B1、C1のみを使用とした場合、セルC3を最終セルとするとします。 貴方が思う最終セルは、どこですか?メモって下さい。 次にEXCELが思ってる最終セルがどこなのか、 Ctrl+Endキーを押下して確めて下さい。 こちらはメモった最終セルよりはるかに大きいはず。これが肥大の原因。 以下、必ずBookをバックアップのうえで行って下さい。 解消のためには、メモった最終セルとEXCELが思ってる最終セルとの差を ・差分行すべて削除して、直後に上書き保存 ・差分列すべて削除して、直後に上書き保存 ※ポイントは「直後に上書き保存」です。 この後、Ctrl+Endキー押下した最終セルがメモった最終セルと一致してるなら サイズを確めてみて下さい。減少してるはず。 ただし、特定の行・列すべてに着色してたらダメかも。 全シートに行って下さいね。

hqkzdmcpib
質問者

お礼

ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • RandenSai
  • ベストアンサー率54% (305/561)
回答No.2

そのワークシートの拡張子は、xlsですか?もしそうなら、私も何度か見た現象です。回答No.1の方法を試してみて、効果があればそれで良し、もしダメだった場合はLibreOffice(Microsoft互換のフリーソフト)で開き、別名保存すれば小さくできます。この時必ず、Excel形式で保存してください。黙っていると、Excelでは開けない拡張子odfのファイルにされてしまいます。またExcel形式であっても、上書きは避けるが吉です。書式が変わっていないかを確認する必要があるので。 LibreOffice公式日本語サイト http://ja.libreoffice.org またExcel,Word2010を使っていると、従来のxls / doc形式で作成されたファイルが開けなくなることがありますが、それもこの方法(LibreOfficeで開いて別名保存)で回復できるので、インストールしておいて損はないソフトです。

hqkzdmcpib
質問者

お礼

ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのシートコピーのエラー

    Windows7 エクセル2007です。 ブック間のシートコピーでエラー発生し挿入できません。原因と挿入方法お願いします。 エラーメッセージ; ------------------------------- 移動先またはコピー先のブックの行列数が元のブックの行数列よりも少ないため、シートを移動先またはコピー先のブックに挿入されません。 データを別のブックに移動またはコピーするにはデータを選択して、「コピー」コマンドと「貼りつけ」コマンドを使用して移動先またはコピー先のブックのシートに挿入してください。 ----------------------------------- やりたいこと; ファイル名AAAの一つのシートをファイル名BBBのシート末尾にコピーしたい。

  • VBAでのコピーについてです。

     いつもお世話になっております。VBA初心者です。  シート全体の内容(データ)を別ブックのシートにコピーしたいのです。しかも、別ブックのシートにはデータがあるので、そのデータ下の行(例えば(20,A))から貼り付けたいのです。  いろいろと調べたのですが、やり方がわかりません。 よろしくお願いいたします。

  • excel vba 複数シートをまとめる

    お世話になります。 A.xlsというブックがあります。 その中に[集計]というシートがあります。 このシートに[ボタン]を配置してクリックしたら以下の動作を実現させたいのです。 (1)[集計]シートのA2に位置セット (2)[東京]、[大阪],[名古屋]という名称のシートの列=A2~A62、行=A2~データ最下行にある全データを[集計]シートにどんどんコピー貼り付けして追加していきたいのです。 上記動作を実現するVBAのロジックをどなたかご教授いただけますでしょうか。 よろしくお願い致します。

  • 900KBは多いですか?

    yahooジオシティーズでHPを作っているのですが、 一つのファイルの重さが、900KB行ってしまいました。 アドバンストHTMLエディタで編集しようと思うのですが、 その900KBを開くと、IEがフリーズします。 暫く経つと、ソースを編集できるようになります。 これは、900KBが多いのか、私のパソコンがしょぼいのか、どちらでしょうか? パソコンのスペックは、 WIN7、コアi7、メモリ8Gです。

    • ベストアンサー
    • HTML
  • Excel2003 シートのコントロールが動かない

    Windows7、Excel2003です。 2月まで正常に動いていたBookのシートに貼り付けたコマンドボタンが押せません。また、新しくコントロールを配置できません。「オブジェクトを挿入できません」のエラーになる。 1.12月11日のKB更新でこの症状が出るということですが、それは関係ないようです。3月初めまでは動いていたし、念のため、.exdの削除と該当KBを削除しましたが症状は変わりません。 2.同じPCにOffice2000/2003/2010がインストールされています。このBookをExcel2010で互換モードで実行すると正常に動作します。 3.コントロールのないvba多用のBookは、このExcel2003でも正常に動きます。 4.別のPC、Windows8.1、Excel2013での互換モードでもこのBookは正常に動きます。 5.Excel2003でのこのBookのコントロールのオブジェクト指定が変です。たとえば、CommadButton1のプロパティで、CommadButton1がCommandButtonではなくWorkSheetになっています。 6.また、CommadButton1にかかわるvbaコードで、Sheet1などのオブジェクト定義がエラーになります。 2003はサポート外というのは別にして、 なにか正常に戻す情報でもあれば教えてください。よろしくお願いします。

  • エクセル(EXCEL)VBAで行自動分割

    エクセル(EXCEL)VBAの質問です。数万行にわたって入力されているデータがありますが、これを1000行づつに分割して、別々の新規BOOK(またはSHEET)へコピーしていきたいのですが、これを実現するVBAを教えていただけ ないでしょうか? VBAマスターの諸兄方、どうぞ宜しくお願い致します。

  • Excel2007でBOOK間のシート移動をVBAで行うとエラーになる

    Excel VBAで開発されたソフトの改造を行ってますが、Excel2007で動作しないマクロがあり困ってます。 <開発環境> ・WindowsXP Pro SP3 ・Celeron 540(1.8GHz) ・メモリ1GB ・Excel2007 SP1 (Microsoft Office2007) 改造元ソフトはOffice2000で開発されており、Excel2007で動作するとマクロエラーが発生する処理があります。 因みにまだソフト改造はしてなく、そのままExcel2007で動作させるだけでマクロエラーが発生します。 発生する箇所はVBAで開発されており、下記のコマンドです。 Sheets(移動元シート名).Move Before:=Application.Workbooks(移動先ブック名).Sheets(1) 異常の内容は下記になります。 ------------------------------- ?err.Description 移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。データを別のブックに移動またはコピーするには、データを選択して、[コピー] コマンドと [貼り付け] コマンドを使用して移動先またはコピー先のブックのシートに挿入してください。 ?err.Number 1004 ------------------------------- 移動元BOOKは1シート、移動先BOOKは1シートあります。 これをExcel2000で実行すると正常にシートが移動できます。 (移動元BOOKのシートがなくなりBOOKが終了して、移動先BOOKは2シートになります) Excel画面の移動元シートを選択して、右クリックメニューの「移動またはコピー」で移動先ブックを指定して移動すると 「移動先またはコピー先のブックの行列数が元のブックの行列数よりも少ないため、シートを移動先またはコピー先のブックに挿入できません。データを別のブックに移動またはコピーするには、データを選択して、[コピー] コマンドと [貼り付け] コマンドを使用して移動先またはコピー先のブックのシートに挿入してください。」 とVBAから実行した時と同じ内容のエラーダイアログが表示されました。 (Excel2000では手動でも移動できました) Excel2007では1シートで構成されたBOOK間の移動はできないのでしょうか? また、これをVBAで対策しようとした場合にどうしたら良いのでしょうか? ネットで調べましたが判らず、ここで質問させて頂きました。 判りにくい説明で申し訳ありませんが、よろしくお願いします。

  • EXCEL VBAでのアプリケーション定義エラーについて

    VBA初心者です。失礼します。 データのあるシートから別シートに、1行ずつ挿入しながらレポートを作成しようとしています。 すると、700行目までいってコピーして挿入しようとするといきなり「アプリケーション定義またはオブジェクト定義のエラーです。」と出てしまいます。 また、元データの並び替えを行うと650行目あたりで同じエラーが表示されます。 エラーの発生する値は並び替えごとに違います。 データを見ても、null値が入っているわけでもなく、他のものとなんら変わりはありません。 データの数を少なくすると最後まで問題なく処理されるのですが…。 負荷が掛かりすぎて上記のようなエラーがでるのでしょうか? しかし行数は700行ですし、列数も10列くらいしかありません…。 どうしても分からずこちらにきてしまいました。 どうぞご指導をよろしくお願いします。

  • Excel 複数ブックを1つのシートにまとめる

    フォルダ内のワークブック約2,000個のデータを1つのシートにまとめたいのですが、VBAの勉強を始めたものの時間ばかりかかってなかなかうまくいかないので、ご指導をお願いいたします。 コピー対象の各ブック内のデータは以下の通りです ・シートは一番左端のもの1つ ・データの行数はバラバラで終端行の検出基準は「J列」 ・データの列は12列で固定 上記のようなデータをまとめ用の新規ブックを作って、1つのシートに全ブックのデータを加算してコピーをしたいです。 コピー対象の各ブックのシート名などは要りません。 ご教示よろしくお願いします。

  • Access2000:VBAを使用したエクセル操作

    下記のように既存のエクセルファイルにクエリからとってきたデータを挿入したいと考えております。 既存のエクセルファイルを開くことは成功したのですが、ある条件だとシートを追加するという処理(オブジェクト記述)がわかりません。 シート追加、あわせてブック追加方法もお願いします。 Set ExcelApp = CreateObject("Excel.Application") Set Book = ExcelApp.Workbooks.Open("C:\query\module\VBExcel.xls") Set Sheet = Book.Worksheets("test1")←追加したい

専門家に質問してみよう