プロが教える店舗&オフィスのセキュリティ対策術

こんにちは。

プログラムに慣れなくてどうしたらいいのかわかりませんが…どなたか教えてください。

VBから、ODBCでデータベースに接続することができました。追加機能としてテーブル定義書の出力をエクセル出力することになったのですが…やり方がわかりません。
わかりづらい説明だと思いますが、どなたかわかる方…教えてください

A 回答 (2件)

#1です。


このままですと全てA列に表示されてしまいますので
項目ごとに表示するように手直ししました。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim i As Integer
Dim filenum As Integer
Const savefile As String = "c:\text.csv"

Cn = New ADODB.Connection
rs = New ADODB.Recordset

Cn.ConnectionString = "DSN=MySQL;UID=sunohara;PWD=2510;"
Cn.Open()
rs.Open("describe shomas", Cn)

Do Until rs.EOF
For i = 0 To rs.Fields.Count - 1
If i < rs.Fields.Count - 1 Then
TextBox1().Text = TextBox1.Text & rs(i).Value & ","
Else
TextBox1().Text = TextBox1.Text & rs(i).Value & vbCrLf
End If
Next

rs.MoveNext()
Loop

filenum = FreeFile()
FileOpen(filenum, savefile, OpenMode.Output)
Print(filenum, TextBox1.Text)
FileClose(filenum)


rs.Close()
Cn.Close()
MsgBox("終了しました。")

End Sub

この回答への補足

折角、教えていただいたのに申し訳ありません…
私の説明不足なのですが…
VB.NETではなく、VisualBasic6.0でしたm(__)m
すみません。

補足日時:2005/11/15 16:40
    • good
    • 0
この回答へのお礼

ありがとうございます。
まだ、作らせていなかったのですが、明日には早速参考にさせていただきます。ご親切にありがとうございました。

お礼日時:2005/11/14 16:19

条件


1.データベースはMySQLを使用。
2.ODBCはMySQL ODBC3.51 Driver
3.VBはVB.NET2003Standard
4.出力はエクセルで開けるCSV形式にする。
5.一度TEXTBOXに表示してからCSVファイルを作成。

答え
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim Cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim i As Integer
Dim filenum As Integer
Const savefile As String = "c:\text.csv"

Cn = New ADODB.Connection
rs = New ADODB.Recordset

Cn.ConnectionString= "DSN=MySQL;UID=fortranxp;PW=password;"
Cn.Open()
rs.Open("describe test", Cn)

Do Until rs.EOF
For i = 0 To rs.Fields.Count - 1
TextBox1().Text = TextBox1.Text & rs(i).Value & vbCrLf
Next
rs.MoveNext()
Loop

filenum = FreeFile()
FileOpen(filenum, savefile, OpenMode.Output)
Print(filenum, TextBox1.Text)
FileClose(filenum)

rs.Close()
Cn.Close()
MsgBox("終了しました。")

End Sub
    • good
    • 0
この回答へのお礼

こんにちは☆
ありがとうございます!!もの凄く助かりました!!
早速やってみます!!
本当にありがとうございます!!

お礼日時:2005/11/12 14:26

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!