Board logo

標題: [發問] 利用VBA進行搜索的問題 [打印本頁]

作者: tryagaaa    時間: 2015-10-6 15:45     標題: 利用VBA進行搜索的問題

本帖最後由 tryagaaa 於 2015-10-6 15:46 編輯

大家午安

現在有個問題

我的資料格式如下

項次        核定        計畫名稱       
1               Y             AAA
2               Y             BBB


這樣


今天我想要利用對話視窗的方式進行搜尋

對話視窗的樣子大概是這樣
[attach]22159[/attach]

右手邊的combobox是給他上面的欄位 或者不限欄位

中間的TEXTBOX是讓他輸入關鍵字

左手邊的combobox是給他選擇AND OR NOR等等的運算子

不知道大大們有甚麼好方法可以提示一下@@


我本來是用
  1. Cells(1, 1) = ComboBox1.Text
  2. Cells(1, 2) = ComboBox2.Text
  3. Cells(1, 3) = ComboBox3.Text
  4. Cells(2, 1) = TextBox7.Text
  5. Cells(2, 2) = TextBox8.Text
  6. Cells(2, 3) = TextBox9.Text
  7. Sheets("工作表1").Range("A:AN").AdvancedFilter _
  8. Action:=xlFilterCopy, _
  9. CriteriaRange:=Sheets(Sheets.count).Range("A2:C2"), _
  10. copytorange:=Sheets(Sheets.count).Range("A1"), _
  11. unique:=False

  12. '關鍵字
  13. k1 = TextBox7.Value
  14. k2 = TextBox8.Value
  15. k3 = TextBox9.Value
  16. '選擇欄位名稱
  17. c1 = ComboBox1.Value
  18. c2 = ComboBox2.Value
  19. c3 = ComboBox3.Value
  20. 'AND,OR,NOT
  21. c4 = ComboBox4.Value
  22. c5 = ComboBox5.Value
複製代碼
這樣使用進階搜尋 可是每次都說
在抽選範圍中找不到欄位名稱或欄位名稱不正確


的錯誤

想要問問看還有沒有比較快的方法可以處理

謝謝~
作者: koo    時間: 2015-10-7 19:52

上傳附件可能比較快得到高高手的解答

剛學習所以也不明白帖主題意
可以針對每一欄做篩選最後結果就是所要的
例如針對"核定"做篩選Y.N
針對"計畫名稱"做關鍵字搜尋
核定為"Y".."計畫名稱"包含"A"的
  1. If TextBox1.Text <> "" Then
  2.     Tx = TextBox1.Text
  3.     Tx = "*" & Tx & "*"
  4.     Sheets(1).UsedRange.AutoFilter Field:=1, Criteria1:=Tx
  5. End If
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)