FPT_online
Thành viên hoạt động
![](/diendan/data/PhoToDanhHieu/gold.gif)
![](/diendan/data/PhoToDanhHieu/gold.gif)
![](/diendan/data/PhoToDanhHieu/gold.gif)
- Tham gia
- 27/10/13
- Bài viết
- 133
- Được thích
- 16
Private Sub ComboBox1_Change()
ActiveCell.Value = ComboBox1.Value
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Me.ComboBox1.Visible = False
' Diep vien ComboBox1 chi hoat dong trong vung B2:B1000
If Target.Count = 1 And Not Intersect(Target, Range("B2:B1000")) Is Nothing Then Cmb1
End Sub
Sub Cmb1()
Dim Rng()
Rng = Sheet2.Range("B4:B8").Value
With Me.ComboBox1
.Top = Selection.Top
.Left = Selection.Left
.Width = Selection.Width
.Height = Selection.Height
.List = Rng
.ListIndex = -1
.Visible = True
.Activate
.DropDown
End With
End Sub
Bạn nói gì mà tôi không hiểu, tôi chỉ thắc mắc lý do sao nó bị vậy thôi, chứ điệp viên cái gìBạn định cho điệp viên ComboBox1 hoạt động trong toàn vùng lãnh thổ à? Nếu click ở đâu cũng hiện Combo thì bạn định đóng nó bằng cách nào? Bắt user chọn bừa một giá trị trong combo khi muốn dọn đồ chơi? Mà code làm sao biết khi nào chọn thật khi nào chọn bừa (giả sử biết được chọn bừa để ẩn nó đi)?
Trong code dưới đây điệp viên ComboBox1 chỉ hoạt động trong vùng B2:B1000
Mã:Private Sub ComboBox1_Change() ActiveCell.Value = ComboBox1.Value End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Me.ComboBox1.Visible = False ' Diep vien ComboBox1 chi hoat dong trong vung B2:B1000 If Target.Count = 1 And Not Intersect(Target, Range("B2:B1000")) Is Nothing Then Cmb1 End Sub Sub Cmb1() Dim Rng() Rng = Sheet2.Range("B4:B8").Value With Me.ComboBox1 .Top = Selection.Top .Left = Selection.Left .Width = Selection.Width .Height = Selection.Height .List = Rng .ListIndex = -1 .Visible = True .Activate .DropDown End With End Sub
Thôi thì bỏ chữ "điệp viên" đi. Còn lại là: "Bạn định cho ComboBox1 hoạt động trong toàn vùng lãnh thổ à? Nếu click ở đâu cũng hiện Combo thì bạn định đóng nó bằng cách nào? Bắt user chọn bừa một giá trị trong combo khi muốn dọn đồ chơi? Mà code làm sao biết khi nào chọn thật khi nào chọn bừa (giả sử biết được chọn bừa để ẩn nó đi)?"Bạn nói gì mà tôi không hiểu, tôi chỉ thắc mắc lý do sao nó bị vậy thôi, chứ điệp viên cái gì
Thôi thì bỏ chữ "điệp viên" đi. Còn lại là: "Bạn định cho ComboBox1 hoạt động trong toàn vùng lãnh thổ à? Nếu click ở đâu cũng hiện Combo thì bạn định đóng nó bằng cách nào? Bắt user chọn bừa một giá trị trong combo khi muốn dọn đồ chơi? Mà code làm sao biết khi nào chọn thật khi nào chọn bừa (giả sử biết được chọn bừa để ẩn nó đi)?"
Chả nhẽ không hiểu khi tôi viết rõ ràng như vậy? Bạn thử click ở bất kỳ đâu xem combo có hiện không thì sẽ hiểu.
Mà thôi, không quan trọng. Code có khắc phục được cái gọi là " nó xổ không đúng" không?
Tôi chỉ thắc mắc sao nó xổ lung tung thôi (thấy nó tại sao vậy không hiểu nên hỏi thôi). Chép code của bạn vào thấy nó hoạt động gì đâuThôi thì bỏ chữ "điệp viên" đi. Còn lại là: "Bạn định cho ComboBox1 hoạt động trong toàn vùng lãnh thổ à? Nếu click ở đâu cũng hiện Combo thì bạn định đóng nó bằng cách nào? Bắt user chọn bừa một giá trị trong combo khi muốn dọn đồ chơi? Mà code làm sao biết khi nào chọn thật khi nào chọn bừa (giả sử biết được chọn bừa để ẩn nó đi)?"
Chả nhẽ không hiểu khi tôi viết rõ ràng như vậy? Bạn thử click ở bất kỳ đâu xem combo có hiện không thì sẽ hiểu.
Mà thôi, không quan trọng. Code có khắc phục được cái gọi là " nó xổ không đúng" không?
Thôi, coi như bài của tôi không có.Tôi chỉ thắc mắc sao nó xổ lung tung thôi (thấy nó tại sao vậy không hiểu nên hỏi thôi). Chép code của bạn vào thấy nó hoạt động gì đâu
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cmb1
End Sub
Sub Cmb1()
Dim Rng()
Rng = Sheet2.Range("B4:B8")
With Me.ComboBox1
.Visible = False
.Visible = True
.Top = Selection.Top
.Left = Selection.Left
.Width = Selection.Width
.Height = Selection.Height
.List = Rng
.Activate
.DropDown
End With