* コンボボックスでの入力レコードの絞り込み [#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