プロが教える店舗&オフィスのセキュリティ対策術

お世話になります。

業務でエクセルに多量のデータ、計算式をいれて使用しているファイルが、現在、容量「5MB」くらいになっています。(現在は支障を感じることなく使えています)改良が必要で「10MB以上」になりそうなのですが、

◆1◆ 安全性(開かなくなったり、壊れたりする可能性等)からいうと一般的に何メガくらい迄が安全と思われる目安なのでしょうか?(尚、開いたり保存したりする時間を要する点では、これによりファイルが壊れる可能性がない限り、こだわりません)

◆2◆ もし、ファイルが開かなくなってしまった場合、何かの方法で開ける方法があるというのを以前「教えてgoo」でみかけたような気がしますが、みつかりませんでした。この点も参考に教えてください。

ちなみに使用パソコンは、セレロン1GB、メモリー500MB程度、ウインドウズXP、エクセル2000です。ファイルに図や写真は貼りつけていません。

以上、よろしくお願いします。

A 回答 (4件)

こんばんは。


Wendy02です。

>これもブックを開いている時に入り込むというニュアンスに受け止めましたが、このあたりをもう少しお教え願えないでしょうか?

開けなくなったブックを、バイナリ・エディタで調べてみると、なんと、インターネットのWebサイトのログインのパスワードが入っていたことがありました。おそらく、インターネット・キャッシュ(Temporary Internet Files)として落ちるべきものが、ブックの中に入り込んだのだと思います。

実際、ブックのファイルは、ひじょうに隙間だらけで、そこに電子のゴミが入りやすいものだと思います。開けられるブックでも、そういうゴミが潜り込んでいて、何かの拍子にどこかのセルを触ると、ハングしたりすることもあるようです。ブックが大きければ大きいほど、そうしたゴミが入り込む要素が高くなるのだと思っています。

過去に、あまりにハングするので、Clean()関数は、そうしたゴミを落とすために生まれたという話もありましたが、これは印刷の制御記号を落とすために使われるもので、あまり有効ではありません。

マイクロソフトのサポートでは、Sylkファイル(書式や式を保存したテキストファイル)に一旦変換して、もう一度ブックにすれば、電子のゴミは落ちて、リフレッシュするという話もありますが、Sylkというのは、CSV よりはマシでも、やはり機能的には半減してしまいます。

>ブックを起動時に、バックアップを取るような仕組み

今は、私の知っている限りの方法を使って行っています。

起動時(Workbook_Open()) に、適当な場所(以下は、そのブックのBackupフォルダ)にバックアップを取るようにさせています。このような方法は、Excelに負担を掛けずに可能です。

If Dir(ThisWorkbook.Path & "\Backup", vbDirectory) = "" Then
MkDir ThisWorkbook.Path & "\Backup\"
End If

Set objFso = CreateObject("Scripting.FilesystemObject")
objFso.Copyfile ThisWorkbook.Path & "\" & ThisWorkbook.Name, ThisWorkbook.Path & "\Backup\" & ThisWorkbook.Name
Set objFso = Nothing


また、終了時には以下のように、もう1つのファイルを取るようにしています。

With CreateObject("Scripting.FilesystemObject")
Set objFile = .GetFile(ThisWorkbook.Path & "\Backup\" & ThisWorkbook.Name)
FDate1 = objFile.DateLastModified '←これで日時が取れます。


DifDate = DateDiff("d", FDate2, FDate1)

End With

もう1つ、別なバックアップファイルを取っておいて、これで日時の比較(DifDate)を取って、それで、その日時を超えたら、別のバックアップをもう一度取るようにしています。ただし、日付違いのブックは、拡張子を変更させています。

このコツは、ExcelのApplication での操作をしないほうが、圧倒的にコピーなどの操作時間が速いので、起動・終了があまりに気になりません。Excelの機能にあるバックアップシステムは、以外にうっとうしく、特定のブックに指定することも出来ないので、逆に不便です。まだ、実験的な段階ですが、これで何度か、ブックは救われています。

なお、標準モジュールとThisWorkbook のイベントを使い分けるのもコツです。あまり、細かくは書きませんが、いろいろ工夫してみるといいと思います。
    • good
    • 0
この回答へのお礼

お忙しい中、夜にいたってまでのお返事をありがとうございます。行き届いたまた優しく解説してくださって、心より感謝いたします。

エクセルのファイルに隙間があってというお話は、興味もあり、驚きでした^^;奥の深い世界ですね。VBAのご指導もありがとうございます。勉強してみます。またのご指導をよろしくお願いいたします。

お礼日時:2006/02/23 08:53

1.基本的に現状の時点で既に壊れる可能性はあります。


安全のためには定期的にバックアップをした方がいいですね。
容量に関しては、使用しているHDDの空き容量がそのエクセル以上なら問題ありません。
ただ開くのと、再計算に時間がかかることと、メモリを圧迫するので書式等の変更ができなくなる可能性があります。
CPUは1GBとのことで安心ですが、体感が遅くなるようならメモリの増設は考えた方がいいかもしれませんね。

2.ファイルが壊れた時の対処なら
ファイルにアクセスできなくなった場合の原因と対策
http://search.support.microsoft.com/kb/411636
Excel がエラーで起動できない場合の対処方法
http://search.support.microsoft.com/kb/825652
    • good
    • 0
この回答へのお礼

mshr1962さん、いつもありがとうございます。
毎回どれほど助けられていることでしょうか。

やはり、バックアップが基本ですね。作るのは素人の私、使用するのはもっと素人の各担当者なのでバックアップをどう徹底させるかが課題です。ファイルが壊れたときの対処のサイトもありがとうございました。

お礼日時:2006/02/22 16:23

回答にはならないかもしれませんが、私は10メガ程度のファイルはごく普通に使っています。


いままで作成したものでは最大50メガぐらいでしょうか。(ただしCPUは2ギガです)
なお重いファイル(20メガ以上を目安にしています)を使う時は(自動計算の必要がない限り)なるべく再計算を手動にしています。

P.S. バックアップは必須です!!!
    • good
    • 2
この回答へのお礼

10M~50Mですか!!!
やはり安全性の問題は、大きさ(容量)の問題ではないということですね。ありがとうございました。

お礼日時:2006/02/22 15:47

こんにちは。

Wendy02です。

>◆1◆ 安全性
私が、毎日使っているブック(ここのカテゴリのログを取るブック)は、だいたい、1.5 M ですが、時々、トラブルを起こしますので、ブックを起動時に、バックアップを取るような仕組みにしてあります。

そして、バックアップをもう1つとって、そのもう1つのほうが 3日経つと、また、新たにバックアップを取るようにして、二重の安全策をほどこしてあります。

大きさの問題よりも、そのブックを開いている間の使い方にあるかと思います。
特に、インターネットなどのメモリ・バッファ を使うようなものは、危険です。

>◆2◆ もし、ファイルが開かなくなってしまった場合、何かの方法で開ける方法がある

それは、期待しないほうがよいです。いくつかありますが、バックアップに勝るものはありません。

この回答への補足

Wendy02さん、いつもいつもありがとうございます。
1.5Mでもトラブルを起こすのなら、おっしゃるように容量の問題ではないのですね。

ところで、以前のWendy02さんのある方へのご回答の中に「電子のゴミのようなものが入り込んで・・・」エクセルが不具合を起こすというようなことが書いてありました。これもブックを開いている時に入り込むというニュアンスに受け止めましたが、このあたりをもう少しお教え願えないでしょうか?また、インターネットなどのメモリ・バッファとは何でしょうか?いつもながらの、ど素人で何もわからず申し訳ありません。よろしければお返事お待ちしています^^

補足日時:2006/02/22 15:34
    • good
    • 0
この回答へのお礼

たびたび失礼します。補足欄に書き忘れました。

>ブックを起動時に、バックアップを取るような仕組み
について、そのVBAを教えてくださいませんか?VBAの勉強も滞っていて、ど素人のままですが、よろしくお願いいたします。

お礼日時:2006/02/22 15:57

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A