- 帖子
- 5
- 主題
- 1
- 精華
- 0
- 積分
- 11
- 點名
- 0
- 作業系統
- WIN7
- 軟體版本
- OFFICE2003
- 閱讀權限
- 10
- 性別
- 男
- 註冊時間
- 2011-11-25
- 最後登錄
- 2016-12-21
|
7#
發表於 2011-11-29 11:12
| 只看該作者
回復 6# GBKEE
For S = 1 To Workbooks("MODELNUM.xls").Sheets.Count
Sheets(S).Activate
Range(Cells(1, 1), Cells(65536, 5).End(xlUp)).Select
Selection.Sort Key1:=Range("C1"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, SortMethod _
:=xlStroke, DataOption1:=xlSortNormal
Sheets(S).Range(Cells(1, 1), Cells(1, 5)).Select
CN = TBCHNM.Text
Set CN1 = Cells.Find(CN, LOOKAT:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext)
If Not CN1 Is Nothing Then
'G = 1
LBMODEL.ColumnCount = ActiveSheet.Columns.Count
LBMODEL.ColumnWidths = "2cm;3.5cm;5cm;6.5cm;5cm"
LBMODEL.Font.Size = 10
LBMODEL.List = Range("A1:E1").Value
Set MYRNG = Range(CN1, Range("C65536").End(xlUp))
For Each E In MYRNG
If InStr(E.Text, CN) Then
'.AddItem E '系統預設為ColumnCount = 1欄 要加入資料如此做就好
LBMODEL.AddItem 'ListBox1新增一列 : .ListCount -> ListBox1的列數
For J = -2 To 3
' LBMODEL.AddItem
For i = 0 To 4 'ColumnCount >1 故須在新增列中每一欄依序加入數字文字
'LBMODEL.AddItem
J1 = (E.Offset(0, J))
LBMODEL.List(LT - 1, i) = J1 'ListBox1的列從0開始
J = J + 1
Next
Next
ElseIf Left(E.Text, Len(CN)) <> CN Then
Exit For
End If
Next
'ElseIf CN1 Is Nothing And G = 0 Then
' MsgBox "查無此料號"
End If
Next
大大我把部分改寫成紅色部分就可以了,但又出現另外一個問題,就是我的資料表至少有三個,但我目前這樣寫,
程式跑出來的結果LISTBOX只保留最一個資料表搜尋到的結果,前二個資料表找到的結果統統被覆蓋了,這要如何修正呢?
再麻煩你教我一下,謝謝! |
|