[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2004/08/30(Mon) 22:24
投稿者名:初心者
URL :
タイトル:
CSVファイルに出力する時に
あるデータをCSVファイルとして出力したいのですが、元のデータ数が多く、エクセルでは全て開けないのです。
そこで、ある条件(値が1以上などの一定の条件)のデータのみを抽出するということはできるのでしょうか?
わかる方がいましたら、お教え下さい。
おおまかな方法で結構ですので、よろしくお願いします。

投稿時間:2004/08/31(Tue) 08:25
投稿者名:N.Doi
Eメール:
URL :
タイトル:
Re: CSVファイルに出力する時に
条件文を入れるだけだと思いますが...

投稿時間:2004/08/31(Tue) 09:29
投稿者名:kazuやん
Eメール:
URL :
タイトル:
Re: 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を使うのが簡単だと思います。

投稿時間:2004/08/31(Tue) 11:14
投稿者名:初心者
URL :
タイトル:
Re^2: 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"

投稿時間: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"には「 & "$"」がありません。

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

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

投稿時間:2004/08/31(Tue) 15:12
投稿者名:初心者
Eメール:ready_steady_co@yahoo.co.jp
URL :
タイトル:
Re^4: 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"には「 & "$"」がありません。
>
> ・オブジェクトが見つからない
>  →これはソースをデバックして何のオブジェクトが無いかを確かめてみてください。
>
> 私が気が付いた点を記載してみました。少しでも参考になればと思います。

kazuやんさん、お返事ありがとうございます。
読込むファイルのシート名をSheet1に直したところ、うまく実行できました。
返答を頂いた皆様方、アドバイスを頂き、ありがとうございました。


# 勝手ながら、このサイトに掲示しているサンプルをペーストされた文を削除
 させていただきました。
コードに問題があった時に一々ペーストされたものまで修正ができませんし
又、知らない人がみれば、掲示板のコードをまねてサンプルを作ったと思われ
かねませんし、掲示板に投稿してあったコードだから自由に使ってよいと誤解
されかねません。
はじめにお読み下さいでもおことわりしておりますので、上記処置をとらせて
頂きました。

必要な場合はリンクを貼り、変更した部分のコードなりを投稿するように
して下さい。

管理人