具体的には型式から仕入れ価格を取得する。
実行結果は以下のとおり。
一行目が型式で二行目が仕入れ価格である。
次は取得した仕入れ価格をセルへコピーすることと取得したデータがなかった場合の処理をどうするかだな。
きれいにしたいのは実行した次のコードのことだったりする。
Sub Main
Dim DatabaseContext,DataSource,Connection As Object
Dim Statement,ResultSet As Object
DatabaseContext = createUnoService("com.sun.star.sdb.DatabaseContext")
DataSource = DatabaseContext.getByName("DataBaseFile")
Connection = DataSource.getConnection("", "")
Statement = Connection.createStatement()
Dim Sheet As Object
Dim SheetName As string
Dim Cell As Variant
SheetName = "見積り"
dim const startgyou = 11 - 1
dim const countgyou = 6 - 1
dim const endgyou = startgyou + countgyou
dim const katasiki = 1
dim const siirekakaku = 7
Doc = ThisComponent
if Doc.Sheets.hasByName(SheetName) then
Sheet = Doc.Sheets.getByName(SheetName)
for gyou=startgyou to endgyou
Cell = Sheet.getCellByPosition(3, gyou).String
ResultSet = Statement.executeQuery("select * from TestTable where katasiki = '" & Cell & "'")
If IsNull(ResultSet) Then
MsgBox "データがありませんでした。"
Else
ResultSet.next
msgbox ResultSet.getString(katasiki) & chr(13) & ResultSet.getString(siirekakaku)
End If
next gyou
else
msgbox "シート " & SheetName & " がありません。"
end if
Statement.Close()
Connection.Close()
Connection.Dispose()
End Sub
0 件のコメント:
コメントを投稿