快適ソフトトップへ 
 ソフトウェア技術 
 ハッシュでファイル確認   プログラムの難読化   ファイル型DBのSQLite 
 トラブル 
 マウスでトラブル多発   フリーメールのトラブル   ニフティが詐欺未遂   ニフティが詐欺未遂2   ニフティが詐欺未遂3 
 システム開発の実際 
 システム開発の実際   仕様書の重要性 
 ExcelとDB 
 エクセルの長所   エクセルの限界   データベースの長所 

 エクセルの限界

                                更新 2021/05/23(日)                                 文責 炭本 治之

■エクセルの限界

  ただし,エクセルのシートでデータを管理していると,   様々な不都合が生じることがあります。   (1)大量のデータになると不便    エクセルでは,レコード数(行数)が1万を超えて大きくなると,ファイルを開くだけでも    時間がかかるようになります。    エクセルのファイルを開くと,ファイル内のすべてのデータがメモリ上に展開されます。    そのため,5秒,10秒,... とファイルを開くだけで待たされるハメになります。    この不便は軽微ですが,次の不都合からは軽微ではありません。   (2)エクセルでは,間違ったデータ,整合性のないデータの対策がない    例えば,異なる商品に同一の商品コードを設定できます。    間違ったデータを許さないためには,それをチェックする仕組みをつくる必要があります。   (3)エクセルでは,データが複雑になると手に負えなくなる    前の例で,商品の価格が改定される場合はどのようにすべきでしょうか。    (a)案A 価格改定された商品の価格だけを書き換える     ×新しい価格での販売額合計は計算できるが,以前の価格での販売金額が計算できない    (b)案B 価格マスタを価格改定のたびに新しいシートで作成する     ○最近のの販売額合計も,過去の販売額合計も計算できる     ×改定されるごとに価格マスタが増えて,ファイルサイズがどんどん大きくなる     ×改定されるごとに,販売金額計算のマクロを修正する必要がある      または,どの価格マスタを使うかをマクロで指定できるようにする必要がある    更に,次のような情報を管理することが普通にあります。    ・販売テーブルに販売先の顧客情報を記録し,顧客ごとの販売額を計算,請求書を印刷       ・消費税の変更にも対応する    ・一つの商品でも複数の仕入先があって,それを管理する    このように,扱う情報が複雑になると,    マクロで検索・集計・並べ替えを作るのが,大きな負担となります。    作成済みのマクロを修正,改良するのも大きな負担になります。   (4)エクセルのシートに対してはSQLを使えない。    「エクセルのシート」と「データベースのテーブル」とはどちらも表形式で,    その点では同じす。    しかし,データベースのテーブルは,SQLで情報の入出力ができます。    エクセルのシートにはそれができません。    SQLとは     Structured Query Language 構造化問合せ言語     英語の命令文にそっくりの命令で,次のことができます。      テーブルへのレコードの追加,既存レコードの更新・削除      テーブルのレコードの検索,集計,並べ替え   (5)エクセルのマクロは重い処理では不安定    フォームを追加して,フォーム上にテキストボックス,リストボックス,ボタンなどを    配置することができます。    ところが,フォームを使うと,ときどき動作異常があります。    特にリストボックスを使った場合に異常が起きやすいようです。   (5)64ビット版は下位互換性がない    32ビット版のエクセルで利用できたマクロは,    エクセルを64ビット版にバージョンアップすると,使えなくなることがあります。 (終わり) ページの先頭へ