2011-05-22 88 views
0

我的,我想通過VBA形式與它的工作記錄列表篩選工作表的記錄。Excel 2007中,VBA形式根據病情

爲例如:低於記錄列出

ID   Score Date 
------------------------------ 
228483  80  5/10/2011 
243216  60  4/3/2011 
285483  40  5/1/2011 
291584  30  5/2/2011 
291323  70  4/4/2011 
285607  40  5/7/2011 
7158441  90  5/8/2011 
7083234  10  4/2/2011 

我想有具有多形式的組件,其中每個將基於條件此上面所列內容列表中的記錄一個VBA形式。

例如在左上方的部件會列出誰得分超過50的記錄,並在右上角的相同類型的另一個組件會列出一個月#期間取得5

我沒那麼多紀錄在VBA的形式,真的不知道什麼組件會做那個,怎麼做。

將在工作表中的任何變化直接反映在VBA形式的列表?


感謝哥哥Jonsca和harag的大力支持和肯定我在尋找類似的DataGridView是基於condition..I數據庫retreived一個滾動和排序表試圖尋找「Microsoft Office電子表格」但它似乎需要一些解決方法爲excel2007添加它,但我的問題是,我們可以有這個更簡單的方法,例如本地網頁可以連接到excel工作表,並具有相同的控制...我做什麼我在找

http://img849.imageshack.us/img849/3834/13125375.png

草圖一樣容易BUIL d網頁與工作表之間的連接(並且擁有此控件)...非常感謝兄弟提前。

+2

到目前爲止您嘗試過什麼?如果你不知道表格,你必須與他們合作,你應該花時間瞭解他們的工作方式,然後再與他們進行一個項目。 – jonsca 2011-05-22 05:17:10

+0

可以請你告訴我什麼組件做到這一點,我試過vba控件,但我沒有得到在窗體中顯示記錄的控件......我在vba中有點不錯,但沒有在表單中,我嘗試過但仍然不能沒有得到它,也沒有身體問四周,所以你可以幫助嗎? – 2011-05-23 06:07:37

+0

我只是至少需要控件名稱或組件名稱來顯示基於條件的表單內的工作表記錄,至少名稱爲:| – 2011-05-23 06:10:22

回答

0

我會建議你使用一個列表框控件。列表框可以顯示多個列,您只需填充它。像下面的東西應該幫助

'clear the listbox 
lst.Clear 

' set the number of columns 
lst.ColumnCount = 5 

' iterate through the cells and populate the listbox 
For x = 1 to 10 
    With lst 
     .AddItem "ID"      ' Column 1 data 
     .List(.ListCount - 1, 1) = "Score" ' Column 2 data 
     .List(.ListCount - 1, 2) = "Date" ' Column 3 data 
     .List(.ListCount - 1, 3) = "Col 4" ' Column 4 data 
     .List(.ListCount - 1, 4) = "Col 5" ' Column 5 data 
     'etc. 
    End With 
Next 

' set the widths of the columns 
lst.ColumnWidths = "2.0cm;1.0cm;2.0cm;1.0cm;1.0cm" 

你需要在你想要的值來取出相應

希望這有助於

編輯: >>將在工作表中的任何變化直接反映到vba表單中的列表? < < 不,你將需要更新通過VBA代碼列表框。

+0

實際上它就像圖片中紅色圈起來的東西,應該與表格中的數據綁定,但這是來自acces,我不知道excel是否有它?我不知道這個組件的名字。 http://imageshack.us/photo/my-images/21/captureqwv.jpg/ – 2011-06-05 06:57:23

+0

這是一個組件,以編程方式顯示許多記錄(在條件下),我可以通過滾動和排序。我的評論太糟糕了, – 2011-06-05 07:07:36

+0

對不起,我沒有看到您的文章中的任何圖片,所以不知道紅色圈出什麼。 – harag 2011-06-05 10:08:07