* コンボボックスでの入力レコードの絞り込み [#f15a89c3]
|RIGHT:|LEFT:|c
|~ページ|[[OpenOffice.org FAQの登録ページ]]|
|~投稿者|guni|
|~分類|#listbox3(Q&A,faq03,class)|
|~優先順位|#listbox3(低,faq03,priority)|
|~状態|#listbox3(質問,faq03,state)|
|~状態|#listbox3(完了,faq03,state)|
|~カテゴリー|#listbox3(Base データベース,faq03,category)|
|~投稿日|2011-02-12 18:47:02 (土)|
|~OS|windows7|
|~依存するページ||
|~バージョン|#listbox3(3.3.0,faq03,version)|
** メッセージ [#o4722c28]
|LEFT:|c
|回答ページでは行末に「~」を付加する必要はありません|
住所録を入力するときに、重複を防いだり、既に入力したものを編集するために、~
コンボボックスで入力されている住所録を表示して、選択すると、そのレコードが~
編集対象となるようにしたいと思っています。~
新規に入力するためにナビゲーションバーをつけていますが。ほかのフォームの一部~
に組み込みたいと最終的には思っています。~
いろいろな所を見ていたのでどこに依存するのかわからなくなってしまいましたが~
以下のようにマクロを組んでみました。~
Sub ListChange
Dim Doc As Object
Dim Form As Object
Dim Ctl As Object
Dim Connection As Object
Dim Statement As Object
Dim ResultSet As Object
Dim Sqr As String
Dim SelectList As String
Dim lRow As Long
Doc = ThisComponent
Form = Doc.DrawPage.Forms.GetByName("MainForm")
Ctl = Form.getByName("cmbsearch")
SelectList = Ctl.Text
Connection = Form.ActiveConnection()
Statement = Connection.createStatement()
Statement.ResultSetType = 1004
Sql = "SELECT * FROM ""person_t"" WHERE ""name_c"" = '"+SelectList+"'"
ResultSet = Statement.executeQuery(Sql)
ResultSet.next
lRow = ResultSet.getLong(1)
Sql = "SELECT * FROM ""person_t"""
ResultSet = Statement.executeQuery(Sql)
ResultSet.relative(lRow)
Form.Row = lRow
End Sub
lRowには正しい値が入っていることは確認しましたが、これをどこにセットすればレコード~
が移動するのでしょうか。ナビゲーションバーにセットできるのでしょうか。
----
***解決しました [#r1e0baa9]
>guni (2011-02-13 10:06:32 (日))~
~
faq/4/976「フォームベースの検索・絞込み」~
faq/4/1680「複数のテーブルからちょっとづつレコードを選択して、別のテーブルへ転記したい」~
faq/6/125「コンボボックスによる絞込みについて」~
~
上記を参考に、考え直したら自分の考えていることができることがわかりました。このようなマクロまでいらなかったです。失礼しました。~
//
#article