• ベストアンサー

DBをエクセル表にしたい

失礼いたします。 javatea_1985と申します。よろしくお願いします。 今、SQLを用いて管理しているデータベース(テーブル)に、次の機能を追加したいと思います。 つまり、ボタンをクリックするとExcelで結果が開くような機能(CSV機能)を追加したいです。 ところが、ここ3日くらい調べているのですが何らかのソフトをインストールする方法しか見つからず、コードを自分で書くようなサンプルは見つかりません。。・゜ °・(><)・° ° ・。 どこかいいサイトを教えていただけませんでしょうか?よろしくお願いします。m(__)m

質問者が選んだベストアンサー

  • ベストアンサー
noname#182251
noname#182251
回答No.1

言語が書いてありませんが多分お名前からしてjava? javaは知らないので、以前デルファイで書いたコードをそのまま。ご参考までに procedure TWPMFilterExecForm.Button2Click(Sender: TObject); var XlsFname:string; i,j,xRowCount,xColCount:integer; ra,Excel,ExcelApp,WorkBook,OLEArray : Variant; begin xlsFName:= ExtractFilePath(Application.ExeName); XlsFname:= xlsFName+PaternsADODataSet.FieldValues['PaternName']+'.xls'; ProgressBar1.Visible:=True; with StringGrid1,ProgressBar1 do begin if RowCount=1 then Exit; Max:=RowCount; screen.Cursor:=crHourGlass; SysUtils.DeleteFile(XLSFname); Excel := CreateOleObject('Excel.Application'); ExcelApp := Excel.Application; ExcelApp.Visible := false; WorkBook := ExcelApp.WorkBooks.Add; xColCount:=ColCount; xRowCount:=RowCount; OLEArray:=VarArrayCreate([0,xRowCount,0,xColCount],varVariant); for i:=0 to RowCount-1 do begin Position:=i; for j:=1 to ColCount-1 do OLEArray[i,j-1]:=Cells[j,i]; end; ra := Workbook.Sheets[1].Range [Workbook.Sheets[1].Cells[1, 1], Workbook.Sheets[1].Cells[RowCount,ColCount]]; ra.Value := OLEArray; Workbook.close(True,XLSFname,); screen.Cursor:=crDefault; beep; end; ProgressBar1.Visible:=False; end;

javatea_1985
質問者

補足

ありがとうございます! そうです。Javaをやっております。 そのため、好きでもないJavateaを毎日飲んでおります。 デルファイの基礎知識がないので少し難しいですが、通じるものはあるのだと思います。 エクセル関連の記述場所がExcelAppとなっていて分かりやすいですね。ありがとうございました。m(__)m

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (3)

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.4

Office2003を使っているなら下記を参照してくみてください。

参考URL:
http://www.javaworld.jp/technology_and_programming/-/10977.html
全文を見る
すると、全ての回答が全文表示されます。
  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.3

SQLの作業というよりはミドルウェアやアプリケーション としての作業でしょうね。 たとえばMySQLとPHPを組み合わせれば、CSVの 出力は普通にできますし、PEARなどと組み合わせて 直接エクセルのファイルを出力することもできます。

javatea_1985
質問者

補足

ご解答ありがとうございます。 PEARがなんなのか知りませんが、調べてみます。 ただ、Javaなら少しは分かるのですが、PHPは全く分かりません。JavaとMySQLを組み合わせてエクセルファイルを出力する方法はありますか? また、SQLyogを使っているのですが、MySQLを使った方がいいですか?周りに教えてくれる人がいないんで、よろしくお願いします。o(^ー^)o

全文を見る
すると、全ての回答が全文表示されます。
  • STICKY2006
  • ベストアンサー率29% (1536/5269)
回答No.2

んー。。。詳しい状況が分からないのであれですが。。。 ̄▽ ̄ まぁ、十分実現可能なことではありますよね(まぁソフトを落とせばできる。んですしww とりあえず >>SQLを用いて管理しているデータベース がイマイチ? 物によってSQLの書き方もかなり変わりますし。。。 ・SQLServer ・オラクルSQL ・MYSQL などの種類。。。と思っていいんですかね? (SQLを使って管理しているDB。。。の認識自体が違ったらあれですけど^^; 基本的な流れ?としては、 ・DBに接続する。 ・表示する値を取り出す。 ・表示する。 ・DBを接続する。 ですかね? 接続も種類は様々ですし、表示する値を取り出すのも、SQL文なので、物によってバラバラだったりしますが。。。 あー。ちなみに、ここまで書いて1番の回答者がいる。というのに気づいたので補足(?)ですが、下記アドレスで。。。というのでしたら、Excelを起動した状態で、ボタンを押したらDBの内容をExcelに書き出し、CSV保存は自分の手で。。。という形になるかな?と思いますので。。。

参考URL:
http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_130.html
全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • DBをエクセル表に出力

     失礼致します。先ほど質問させて頂いたjavateaです。 同じ内容の質問ですが、多少知識が増えました。 よろしくお願いします。 今、MySQLドライバを使ってデータベースに接続、クエリーを実行して結果セットを取得、画面(ローカルホストのブラウザ)に表示させています。 目的としましては、このデータを画面上のボタン(リンクでも)を押すことによってダウンロードし、エクセル表に出力したいです。 そのためにはまず、データをCSV形式に直す必要があり、その後でダウンロード機能をつければいいのではないかということを聞きました。このCSVへの変換はどうすれば出来るのでしょうか?javateaはjavaで記述しているのですが、phpでははじめからCSV出力機能が付いているらしいですね。javaでも簡単に出来ないのでしょうか? 小さな事でもいいので教えてください。よろしくお願いします。m(__)m

  • エクセル表として出力したい

    SQLで操作しているデータベース(テーブル)をエクセル表として出力したい(CSV機能)です。 ネット上のソースをいくつか見てみましたがエラーがなくならないのと、あとそのソース(エクセル表にデータを書き込むJavaクラスファイル)をどのように組み込めばいいか分かりません。 エクセル表としてデータを得るにはどうすればいいか教えていただけますか?(database名はdb1、table名はtable1としています。)

  • aspファイルにcsvインポートのSQLを書きたい

    お世話になります。 当方サーバー管理初心者です。 社内イントラ内に古いaspファイルで構成されたイントラサイトがあります。 そのイントラサイト内のあるaspファイルの中に、ボタンがあり、ボタンをクリックしてインポートしたいCSVを指定し、 登録ボタンを押してCSVをインポートすると、社内にあるSQLサーバーにアクセスし、データを追加したいテーブルに CSV内のデータを追加したいのですが、その際のaspファイル内に記載する SQLコマンドはどのようになるのでしょうか? Insert Into データを追加したいテーブル名 Values ( 以降に何を入れたら良いかわかりません。 不足な情報があれば加筆修正いたします。 どうぞよろしくお願いいたします。

  • <VB.NET>INSERT文でDBにデータを入れたい 

    プログラム初心者です。 ボタンを押したらtextboxの値がDBのテーブルに格納されて画面が閉じるという処理をしたいです。 そして他の画面でボタンを押すとINSERT済みのテーブルが出るという 処理をしようと思っています。 今のところは、他の画面でボタンを押してもINSERT済みのテーブルが でないという状態です。元のテーブルのデータはでます。 サンプルを見つけてやってみたのですが、思った結果がでません。 public sub botton1-click dim sql_insert as string dim cmd_insert as oledbcommand dim strconn as string = "provider = ~OLEDB4.0 = ~.mdb" DA = New oledbDataAdapter conn = New oledbconnection(strconn) sql_insert = "INSERT INTO A組(名前) VALUES(TextBox1.Text) cmd_insert = New oledbcommand(sql_insert,conn) DA.insertCommand = cmd_insert Me.colse end sub DataAdapterはdatasetを使わず直接DBに格納させるINSERTの時にでも 使うのでしょうか? 自分自身まだよく分かっていないので、正しいコードと処理の流れを 教えて欲しいです。 使っているのはaccess2000、VB.NET2003です。よろしくお願いします。

  • SQL serverの1つのデータベース内にある全てのテーブルを一気に

    SQL serverの1つのデータベース内にある全てのテーブルを一気にcsv化したいと思っています。 が、テーブルを1個ずつcsv化する方法しか見つからず、困っています。 テーブルの数が100ほどあるので、できれば一気に行いたいのです。 ※見つけた方法 (1)SQL Server Enterprise Maganerで、データベースを右クリック→「すべてのタスク」の「エクスポート」→変換対象にFlat Fileを選ぶ これだとテーブル1個ずつしか変換できません。 (2)bcpコマンドを使う こちらもテーブル名を指定していますので、やはりテーブル1個ずつしか変換できません。 何かいい方法はないでしょうか。 あるいは、上記の方法を少し変えることで一気に変換できるのでしょうか。

  • Microsoft Visual C++ 2008 Express E

    Microsoft Visual C++ 2008 Express EditionとMicrosoft SQL Server 2008 を使用してWindowsフォームアプリケーションでプログラミングを行っています。 今完成させたい機能は、データベースの値をDataGridViewに表示する。 その表示画面のDataGridViewに値を書き込み更新ボタンをクリックしたらそれがデータベースに 反映される。 DataGridViewのレコードを削除でき、それもデータベースに反映させることができる。 以上の三つです。 DataSetにデータを読み込ませて、DataGridViewに入れるとか、BindingSourceを使用する必要が あるなどは、どこのサンプルコードにも登場してくるのでなんとなく分かるのですが、完成には至って いません。 Visual C++のサンプルコードがあれば助かるのですが、今はVC#などのサンプルコードを見ながら プログラムを作成しています。 知識があまりないものなので、もしよろしければやさしい解説を宜しくお願い致します。

  • 作成したDBを使いたい

    SQL Server 2008 Express のマネジメントスタジオで簡単なデータベースとテーブルを作りました。それをVisual Basic 2008 Express で使うためにデータベースエクスプローラで表示させたいのですが表示されません。 なので接続の追加で直接mdfファイルを開こうとしてみると、 「オペレーティングシステムエラー32: プロセスはファイルにアクセスできません。別のプロセスが使用中です。アタッチできませんでした。同じ名前のデータベースが既に存在するか、指定されたファイルを開けないか、UNC 共有に配置されています。」 と表示されます。 初心者なので分かりやすく教えて欲しいです。 よろしくお願いしますm(__m)

  • AccessのSQLについて教えてください。

    Excel+VBA から、ADOを使って、Accessを操作しようとしています。 なんとか、sqlを実行できるようになったのですが、 一点、分からないところが出てきましたので、教えてください。 insert文で、レコードを追加したとき、追加されたレコードのIDを取得したいのですが、 どのようにすれば良いかわかりません。 コードは次のようにしています。 cnn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=" & データベース名 & ";" sql = "INSERT INTO テーブル名(フィールド) VALUES(値)" cnn.Execute sql 以上、すみませんが、よろしくお願いいたします。

  • htmlフォームから受け取ったファイルをDBへ保存

    htmlのフォームタグ内で、input type=file で受け取ったPDFファイルを phpスクリプトで、MYSQLのデータベースへ保存したいのですが どのように書けばいいのかわかりません。 保存する型はBLOB型でよいといくつかのサイトで書いてあるのですが、 SQL文の書き方や、フォームから受け取ったデータの処理の仕方などの詳細が わかりません。 フォームで受け取ったファイルをデータベース(mysql)へ保存する 簡単なサンプルコードなどが知りたいです。 よろしくお願いいたします。

    • ベストアンサー
    • MySQL
  • htmlフォームから受け取ったファイルをDBへ保存

    htmlのフォームタグ内で、inputtyp=file で受け取ったwordファイルやPDFファイルを perlで書いたCGIプログラムのほうで、MYSQLのデータベースへ保存したいのですが どのように書けばいいのかわかりません。 保存する型はBLOB型でよいといくつかのサイトで書いてあるのですが、 SQL文の書き方や、フォームから受け取ったデータの処理の仕方などの詳細が わかりません。 フォームで受け取ったファイルをデータベース(mysql)へ保存する 簡単なサンプルコードなどが知りたいです。 よろしくお願いいたします。

    • ベストアンサー
    • Perl
このQ&Aのポイント
  • スマホからBluetoothで印刷したいがうまくできない場合の対処法を教えてください。
  • お使いの環境や接続方法、関連ソフトウェアについて教えてください。
  • Bluetooth印刷に関するトラブルの解決方法や注意点について教えてください。
回答を見る