- PR -

Treeviewの選択されているノードから該当するデータをExcelから取ってくる

1
投稿者投稿内容
ルカ
会議室デビュー日: 2006/12/17
投稿数: 2
投稿日時: 2006-12-17 02:32
お世話になります。

個人情報管理ソフトを作成中です。
たいしたデータ量ではないのでデータベースにExcelを使ってます。

処理
・選択されているノードを取得する
・SQL文をなげ該当するデータEXCEからもってくる
・データをDatagridviewに表示する

TreeViewEventArgs.nodeで取ってきたパラメータをSQL文でEXCELから取得することはできないのでしょうか?

バージョン
Microsoft VisualBasic2005
Microsoft Excel 2003

じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-12-17 09:30
引用:

ルカさんの書き込み (2006-12-17 02:32) より:

個人情報管理ソフトを作成中です。
たいしたデータ量ではないのでデータベースにExcelを使ってます。

処理
・選択されているノードを取得する
・SQL文をなげ該当するデータEXCEからもってくる
・データをDatagridviewに表示する

TreeViewEventArgs.nodeで取ってきたパラメータをSQL文でEXCELから取得することはできないのでしょうか?


Jet.OLEDB が認識できる形式で、Excel Worksheet にデータがあるのであれば、可能でしょう。

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
ルカ
会議室デビュー日: 2006/12/17
投稿数: 2
投稿日時: 2006-12-17 15:43
返信ありがとうございます。

引用:
Jet.OLEDB が認識できる形式で、Excel Worksheet にデータがあるのであれば、可能でしょう。



すいません、記述の仕方が分からないのです。

コード:
Private Sub TreeView1_AfterSelect(ByVal sender As Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles TreeView1.AfterSelect

'選択されているノードを取得する
Dim instance As TreeViewEventArgs
Dim value As TreeNode
value = instance.Node


'Excelシートを参照する接続文字列を作成する
ocn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:test.xls; Extended Properties=Excel 8.0;"

ocn.Open()

'選択されているノードをExcelから探すSQL文を実行する
ocom.Connection = ocn
ocom.CommandText = "select * from [2年生$] whare クラス ="value")"

ocom.ExecuteNonQuery()

ocn.Close()


dView = New DataView(dSet.Tables("test.xls"))

DataGridView1.DataSource = dView
End Sub


上のvalueのとこで「この引数を受ける'New'がないためオーバーロードの解決に失敗しました」とでてしまいますどうしたらいいでしょうか?
初歩的な質問ですいません。

[ メッセージ編集済み 編集者: ルカ 編集日時 2006-12-17 15:49 ]
じゃんぬねっと
ぬし
会議室デビュー日: 2004/12/22
投稿数: 7811
お住まい・勤務地: 愛知県名古屋市
投稿日時: 2006-12-18 09:46
引用:

ルカさんの書き込み (2006-12-17 15:43) より:

'選択されているノードを取得する
Dim instance As TreeViewEventArgs
Dim value As TreeNode
value = instance.Node


ここ、意味不明なことをやっていますね。

見るに、MSDN ライブラリから丸写ししたのでしょうけど、
あの "使用例" に書かれたコードは、サンプルになるようなものではないです。

少し自分で考えてみる必要があるでしょう。

引用:

ocn.Open()
ocom.Connection = ocn


ルカさんはご自分で書いているからわかるのでしょうけど、
我々第三者には 'ocn' と 'ocom' の型がわからないです。

この状況でアドバイスは難しいのではないでしょうか?

_________________
C# と VB.NET の入門サイト
じゃんぬねっと日誌
1

スキルアップ/キャリアアップ(JOB@IT)