C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: スプレッドとCSV出力について


(過去ログ 101 を表示中)

[トピック内 10 記事 (1 - 10 表示)]  << 0 >>

■60470 / inTopicNo.1)  スプレッドとCSV出力について
  
□投稿者/ ある (31回)-(2011/07/05(Tue) 10:00:56)

分類:[VB6 以前] 

こんにちわ。

VB6.0で開発中です。
スプレッドに抽出して表示したデータをCSVファイル(Excel)として出力したいのですが
インターネットで調べてもリンク切れなどで参考になるものが見つかりません。
どなたか教えてくれるとうれしいです。
引用返信 編集キー/
■60490 / inTopicNo.2)  Re[1]: スプレッドとCSV出力について
□投稿者/ ない (4回)-(2011/07/05(Tue) 16:45:13)
> スプレッドに抽出して表示したデータをCSVファイル(Excel)として出力したいのですが
> インターネットで調べてもリンク切れなどで参考になるものが見つかりません。

スプレッドからデータの抽出方法が分からないのか、CSV出力方法が分からないのか、
どちらですか?
引用返信 編集キー/
■60495 / inTopicNo.3)  Re[1]: スプレッドとCSV出力について
□投稿者/ やじゅ (1924回)-(2011/07/06(Wed) 06:43:30)
やじゅ さんの Web サイト
No60470 (ある さん) に返信
> スプレッドに抽出して表示したデータをCSVファイル(Excel)として出力したいのですが

スプレッドとは、グレープシティ社が提供しているSPREADでしょうか?
ネットで探すよりは、グレープシティ社に問い合わせるか、ヘルプかサンプルコードで探してみてはいかがでしょう。


引用返信 編集キー/
■60504 / inTopicNo.4)  Re[2]: スプレッドとCSV出力について
□投稿者/ ある (33回)-(2011/07/06(Wed) 11:21:15)
お返事ありがとうございます。

VB6のスプレッドです。
スプレッドに表示されたデータを、コレクションにまとめたので
後はのデータをCSVに出力(入力?)しようと思っているのですが、そのやり方がわからないです。


引用返信 編集キー/
■60505 / inTopicNo.5)  Re[3]: スプレッドとCSV出力について
□投稿者/ ない (5回)-(2011/07/06(Wed) 11:44:15)
> 後はのデータをCSVに出力(入力?)しようと思っているのですが、そのやり方がわからないです。

VB6でCSV出力を行う方法は、「VB6 csv出力」でぐぐれば結構出てきますよ。
(VB6であれば、昔ながらのOpenステートメントが使用できる)
引用返信 編集キー/
■60508 / inTopicNo.6)  Re[4]: スプレッドとCSV出力について
□投稿者/ ある (34回)-(2011/07/06(Wed) 12:00:07)
> VB6でCSV出力を行う方法は、「VB6 csv出力」でぐぐれば結構出てきますよ。
> (VB6であれば、昔ながらのOpenステートメントが使用できる)

ありがとうございます。
すでに調べて結構というか大量に出てくる上に.netも多く。
コレクションからデータを取りたく、その方法が記載されているサイトがあまり見つからない現状です。

引用返信 編集キー/
■60509 / inTopicNo.7)  Re[5]: スプレッドとCSV出力について
□投稿者/ ない (6回)-(2011/07/06(Wed) 12:23:05)
> スプレッドに表示されたデータを、コレクションにまとめたので

とあるので、コレクションからデータを拾えるのだろうと考えてCSVの出力方法についてヒントを出したのですが、

> コレクションからデータを取りたく、その方法が記載されているサイトがあまり見つからない現状です。

とあるので、わたしが質問した

>> スプレッドからデータの抽出方法が分からないのか、CSV出力方法が分からないのか、

これをはっきりとしてください。
さもないと、誰も回答のしようがないですよ。

> すでに調べて結構というか大量に出てくる上に.netも多く。

VB6のCSV出力方法は先ほどのキーワードで上位にすぐ出ていますよ?

あと、VB6の標準コントロールに「スプレッド」などというものはありましたっけ?
おそらくグレープシティ(旧社名は確か文化オリエント)の製品だと思いますが、それは確認できますか?
バージョンによっても違いがあると思うので、正規ユーザーならばメーカーに問い合わせるのが一番でしょう。
(市販品のVB6用コントロールならば、もはや過去の産物となってしまい、ネットでその情報を探しても少ないかも知れません。)
引用返信 編集キー/
■60524 / inTopicNo.8)  Re[1]: スプレッドとCSV出力について
□投稿者/ 魔界の仮面弁士 (2236回)-(2011/07/06(Wed) 15:55:37)
No60470 (ある さん) に返信
> VB6.0で開発中です。
> スプレッドに抽出して表示したデータをCSVファイル(Excel)として出力したいのですが

CSV ファイルとして出力したいのでしょうか?
XLS ファイルとして出力したいのでしょうか?

CSV ファイルを作成したいだけならば、テキストファイルの入出力処理を
記述するだけなので、元データがスプレッド上のデータであろうと、
データベース上のデータであろうと、処理手順に大差は無いはずです。

VB6 でテキストファイルを作成する手法としては、
 (案1) Open/Print/Closeステートメントを利用する。
 (案2) FileSystemObject の TextStream オブジェクトを利用する。
 (案3) ADODB.Stream オブジェクトのテキストストリームを利用する。
などがあります。もちろん、他の方法もありますけれども(DAO を使うなど)。

ちなみに、Print ステートメントの代わりに Write ステートメントを使う方法も
ありますが、これはデータ内容によっては望ましい結果を得られない可能性があります。


とりあえず、VB6 からの CSV 作成の例が下記にあります。ここでは 案1 を使っていますね。
http://msdn.microsoft.com/ja-jp/library/cc440858.aspx

スプレッドという点にさえ拘らなければ、VB6 から CSV を読み書きする方法は
インターネット上などから、幾つかのサンプルを見つけられるかと思います。

引用返信 編集キー/
■60525 / inTopicNo.9)  Re[2]: スプレッドとCSV出力について
□投稿者/ 魔界の仮面弁士 (2237回)-(2011/07/06(Wed) 16:04:17)
何故かSPAM判定されたので、内容を調整しつつ分割投稿。

■No60524 (魔界の仮面弁士) に追記
>>スプレッドに抽出して表示したデータをCSVファイル(Excel)として出力したいのですが
> CSV ファイルとして出力したいのでしょうか?
> XLS ファイルとして出力したいのでしょうか?

CSV ではなく Excel 形式での出力が必要なのだとしたら、事情が変わってきます。
VB6 自体には、Excel 形式での出力機能が備わっていないためです。


現在使用している『スプレッド』が、具体的にどの製品の事を仰っているのかにも
よりますが、それがいわゆる FarPoint 系列の SPREAD コントロールであれば、
XLS ファイルの入出力にも CSV ファイルの入出力にも対応しているはずです。

バージョン等によって多少の際はありますが、具体的には次のような処理です。
(該当製品が現在手元に無いため、下記はインターネット等から拾ったサンプルです)

Call Spread1.ExportToExcel( "C:\test1.xls", "Sheet1", "" )
Call Spread1.ExportToTextFile( "C:\test2.csv", "", ",", vbCrLf, flag, "" )
Call Spread1.SaveTabFile( "C:\test3.txt" )
Call Spread1.ExportToHTML( "C:\test4.html", False, "" )
Call Spread1.ExportToXML( "C:\test5.xml", "", "", ExportToXMLFormattedData, "") 

ただし、エクスポート可能な Excel 形式については、Excel 97〜2003 形式(BIFF 8バイナリ)だけであり、
Excel 2007形式(BIFF 12)は非対応だったと思います。Excel 95形式(BIFF 5)も駄目かも知れません。

なお、上記で示している「スプレッド」の場合、コンポーネント追加画面や
ランタイム情報などに、"PowerTools", "FarPoint Spread", "fpSpread", "vaSpread"
あるいは "GrapeCity", "BOC", "文化オリエント" 等の表記があるかと思います。

SPREAD 自体は元々、米国 FarPoint Technologies 社の製品(DLL版/VBX版/OCX版/.NET版)ですが、
日本語版の開発は、旧BOC(文化オリエント)社によって行われていました(2.5J以降)。
ただし、FarPoint社の全製品はグレープシティ社に買収されたため、2009年以降は
各国語版を含めて、SPREAD 製品群はすべてグレープシティ社の管轄となっています。



また、上記以外で『スプレッド』の名を冠する VB6 対応コンポーネントといえば、
Microsoft の [Office Web Components] 群の「Spreadsheet」という
ActiveX コントロールが挙げられます(今回はコレでは無いと思いますけれども)。

こちらも、Excel 形式への出力をサポートしていますが(Export メソッド)、
出力形式は xls ではなく、XML Spreadsheet か Office 対応 HTML 形式 のいずれかのみです。


あるいは 上記いずれの製品も無い状態で、VB6 から Excel バイナリを出力しようとすれば、
 ・JET の Excel Export 機能を DAO か ADO 経由で呼び出す
 ・自分で BIFF バイナリを直接記述していく
などの方法が考えられます。あとは、それ以外の外部コンポーネント(Excel Creator 等)に頼るとか。



> インターネットで調べてもリンク切れなどで参考になるものが見つかりません。
元の URL が分かっている場合には、その URL を www.archive.org の[Take Me Back] から検索すると、
過去のアーカイブを参照できる可能性があります。

まぁ、VB6 がリリースされたのは 1998年9月の事ですから、今となっては
リンク切れやサイト閉鎖等で失われた情報が多いのも致し方ないですね…。

ちなみに VB.NET/.NET Framework のリリースは2002年です。(.NET 自体は2000年6月が初出)

引用返信 編集キー/
■60563 / inTopicNo.10)  Re[3]: スプレッドとCSV出力について
□投稿者/ ある (35回)-(2011/07/08(Fri) 16:24:16)
みなさんお返事ありがとうございます。

今回は普通にコレクション中のデータを、CSVファイルにPrint関数で書き込みを行いました。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -