VB6.0用掲示板の過去のログ(No.2)−VBレスキュー(花ちゃん)
[記事リスト] [新規投稿] [新着記事] [ワード検索] [管理用]

投稿日: 2004/08/31(Tue) 13:53
投稿者kazuやん
Eメール
URL
タイトルRe^3: CSVファイルに出力する時に

> > > あるデータをCSVファイルとして出力したいのですが、元のデータ数が多く、エクセルでは全て開けないのです。
> > > そこで、ある条件(値が1以上などの一定の条件)のデータのみを抽出するということはできるのでしょうか?
> > > わかる方がいましたら、お教え下さい。
> > > おおまかな方法で結構ですので、よろしくお願いします。
> >
> > N.Doiさんのおっしゃる通り条件文で引き抜けると思います。
> >
> > 元のデータ形式は分かりませんが、Excelファイルでしたら
> > hhttp://www.bcap.co.jp/hanafusa/VBHLP/dao_002.htmにあるとおりDAOを使ってExcelファイルを読み込み
> > if rs.fields(0) = '1' Then
> > end if
> > 見たいな感じで条件を指定し条件の物だけファイルに書き出せば良いかと。
> >
> > 元のデータがテキスト形式ならFileSystemObjectを使うのが簡単だと思います。
>
>
> N.Doiさん、kazuやんさんお返事ありがとうございます。
> 教えて頂いた方法でやってみたのですが、エラーがでてしまいました。
>
> もう少し、行いたい内容を具体的に言いますと、あるデータがCSV形式のエクセルファイルで保存してあり、そのデータ数がおよそ840万のデータ数なのです。
> そこで条件の下で抽出し、エクセルファイルで開けるようにしたいのです。
> いまのままでも上限の65000までは開けるのですが、全体のデータの中で使いたいデータを抜き出したいのです。
> 条件文による抽出方法はわかりましたが、ファイルを読込む段階がうまくいきません。
> 今回のような場合には、open文やwrite文、LineInputなどを用いたほうがいいのでしょうか?
> それとも、他に何かいい方法があるのでしょうか?
> アドバイスを頂ければ幸いです。
> 何度も質問して申し訳ありません。
>
> 参考に教えて頂いた方法で実行したところ、エラーの出たソースを記載します。
> (エラーはsheet名が違い、オブジェクトが見つからないとのことです。
> 何度も確かめたのですが、表記間違いはありませんでした。)
>
>    xlFileName = App.Path & "\carry001.xls"
>    xlSheetName = "carry001"
エラー内容の2つですが

・sheet名が違う
 →xlSheetNameに設定したシート名が違うといわれてる様です。xlSheetNameはデフォルト「Sheet1」
  で変更した場合のみ変更した名前を記載して下さい。
  又例題では xlSheetName = "Sheet1" & "$"なっているのですが
  初心者さんが作った xlSheetName = "carry001"には「 & "$"」がありません。

・オブジェクトが見つからない
 →これはソースをデバックして何のオブジェクトが無いかを確かめてみてください。

私が気が付いた点を記載してみました。少しでも参考になればと思います。


- 関連一覧ツリー (★ をクリックするとツリー全体を一括表示します)

- 返信フォーム (この記事に返信する場合は下記フォームから投稿して下さい)

- VBレスキュー(花ちゃん) - - Web Forum -