- 締切済み
Excelファイルの処理、どのプログラムがよい?
.csvファイルが100個くらいあります。 各ファイルの行数は500~65000ほど、列数は7前後です。 これらのファイルを読み込み、単純操作を行い、結果表示をしたいというのが目的です。 1.具体的にはフォームにファイル一覧が表示される 2.一覧からファイルをクリックすると、ファイルがメモリあるいは、グリッド(?)などに読み込まれる 3.読み込まれたファイルに単純なExcelの処理をほどこす(MAX,MIN関数や加減乗除など) このプログラムを作成するには、どのアプリケーションで作成すべきですか? 自分ができそうなのは、VB.net、Excel、VBAなど(全てサンデープログラマー程度)です。 Javaとか使えません。
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- FEX2053
- ベストアンサー率37% (7991/21371)
行数が足らなくても、シートを複数枚使えばいいだけの話なので、 素直にExcelVBAを使えばいいと思いますよ。Excelだけでその作業 が可能なら、キー記録機能(マクロの自動作成機能)を使えば ほぼ一発でできてしまいます。 VBやAceesのいいところは「大量の作業が一括できるトコ」ですが、 「仕様がきっちり決まらないとプログラムができない」という大きな デメリットがあります。VBAならば「ファイルを読み込んで、Excel上 で見やすく整理する」までで作業を止めて、そのあとはExcel上での 手作業に任せる、という逃げ道があって、自由性が高いです。 特に「読み込んでからデータベース処理をする」「ピボットテーブル を使う」なんて場合は、プログラムを組むよりExcelに任せた方が ずっと融通性が高いですし、プログラムも超簡単になりますよ。
- wormhole
- ベストアンサー率28% (1626/5665)
私なら、その選択肢ではVB.NETでやりそうな気はしますが、 ご自分で実現可能と思われる組み合わせでされるのがよろしいかと思います。 ただExcelのバージョンが書かれていませんが2007までは最大65536行までしか扱えませんのでお気を付けください。
- panacon
- ベストアンサー率31% (214/679)
h260703 さんへ 1つのCSVファイルで500~65000行あって、これが100個もあるとすると、Excelでは行数が足らなくなるのではと思います。だとすると、Accessの方が良いと思います。経験では100万行でも格納できます。Excelで作れた場合は、関数はその都度VBAで動かすようにして、セルに関数を貼りつけないようにしないと、次回開くのに、重すぎで時間がかかると思います。CSVの名前の付け方にルールがあれば、Accessのインポートの繰り返しで、名前を変化させながらインポートするように組めば、フォームのボタンにマクロを貼りつけられるのではと思います。ついでに、必要な計算をクエリで作っておいて、このクエリをExcelでエクスポートしてしまえば、常に、同じ物差しの集計がワンクリックでできると思います。
ご自身のスキルを気にする状況かつ、処理内容が単純計算だけであれば、一番使い慣れたものが最適で、もし普通のVBが使えるんだったらVBAよりは画面設計などの融通がききやすいので、結果的に楽になるのではというのが一般論です。 もしExcelの関数を使ってる場合、それをVBなりで自前処理することになるため、使う関数によってはちょっと面倒かも知れませんが。
- catpow
- ベストアンサー率24% (620/2527)
3で、「単純なExcelの処理をほどこす」とありますが、これが色々あるなら、プログラミングできません。 ですから、普通にエクセルを使って、1つずつCSVファイルを読み込み、シートに式を追加して、1つずつエクセル形式で保存すればいいのでは?