Viết code cho nút combobox hoạt động

Liên hệ QC

DUONGKHALY

Thành viên mới
Tham gia
24/6/11
Bài viết
44
Được thích
8
Xin chào các anh bác, cho em hỏi làm sao để nút combobox sổ xuống thêm chữ B, C nữa vậy các bác, nhờ sự giúp đở của các bác, viết dùm em code để cho nút hoạt động được Cảm ơn.
 

File đính kèm

như thế này phải không bạn
 

File đính kèm

Upvote 0
Đúng rồi, cảm ơn bác nhiều, cho hỏi thêm, vậy mình muốn các chữ cái A,B,C,...Cho nó nằm tại ô D1 hay D2 gì đó thì viết code như thế nào vậy bác, rất ham muốn học hỏi
 
Upvote 0
thì bạn đánh A,B,C vào ô d1,d2,d3...của sheet1
Sau đó tại thuộc tính Rowsource của combobox gõ : =Sheet1!D1:D3
Vậy là ok
 
Upvote 0
Trời. Mình không biết nhiều đâu bạn, bạn nói vậy mình thua luôn, mong bạn giúp thêm lần nữa. Cảm ơn nhiều
 
Upvote 0
Nhờ các bác chỉnh code lại dùm em cho nó hoạt động

Em đã làm rồi sao chưa hoạt động được vậy các bác. Các bác xem lại dùm em. Cảm ơn
 

File đính kèm

Upvote 0
Em đã làm rồi sao chưa hoạt động được vậy các bác. Các bác xem lại dùm em. Cảm ơn
Code của bạn viết:
PHP:
Private Sub ComboBox1_Change()
  ComboBox1.AddItem "A"
  ComboBox1.AddItem "B"
  ComboBox1.AddItem "C"
End Sub
Code thì đúng nhưng đặt không đúng sự kiện. Bạn đặt vào sự kiện Change của ComboBox, vậy chẳng hóa ra khi ta làm gì đó trên ComboBox thì "A", "B", "C" mới được thêm vào sao?
Code này đặt vào sự kiện Initialize của UserForm mới hợp lý (code sẽ hoạt động ngay khi form vừa khởi động)
PHP:
Private Sub UserForm_Initialize()
  ComboBox1.AddItem "A"
  ComboBox1.AddItem "B"
  ComboBox1.AddItem "C"
End Sub
Ngoài ra code này cũng có thể viết theo cách khác:
PHP:
Private Sub UserForm_Initialize()
  ComboBox1.List() = Array("A", "B", "C")
End Sub
 
Upvote 0
Tuy nhiên khi sổ xuống A,B,C cho nằm trên D1,D2,D3 thì code như thế nào vậy bác. Cảm ơn.
 
Upvote 0
Ý mình không phải vậy bác ơi! Mình muốn A,B,C,D sổ xuống và chọn A thi chữ A nằm vào ô D1,......Giống như Data-->Validation vậy.
 
Upvote 0
Ý mình không phải vậy bác ơi! Mình muốn A,B,C,D sổ xuống và chọn A thi chữ A nằm vào ô D1,......Giống như Data-->Validation vậy.
Vậy bạn muốn A nằm ở ổ D1, B nằm ở ô D2, C nằm ở D3 hây sao, nếu vậy có vài chữ cái bạn làm bằng tay cho rồi, nếu ý bạn khác thì bạn thêm đoạn code này vào
PHP:
Private Sub ComboBox1_Change()
Sheet1.Range("d65000").End(xlUp).Offset(1).Value = Me.ComboBox1.Value
End Sub
 

File đính kèm

Upvote 0
Vậy bạn muốn A nằm ở ổ D1, B nằm ở ô D2, C nằm ở D3 hây sao, nếu vậy có vài chữ cái bạn làm bằng tay cho rồi, nếu ý bạn khác thì bạn thêm đoạn code này vào
PHP:
Private Sub ComboBox1_Change()
Sheet1.Range("d65000").End(xlUp).Offset(1).Value = Me.ComboBox1.Value
End Sub
Đây chỉ là ví dụ, thực tế dữ liệu trong ComboBox ít khi nào là 1 ký tự. Vì thế nên dùng sự kiện ComboBox1_Click hơn là ComboBox1_Change ---> Bạn thử mở form và nhập bằng tay vào ComboBox xem sẽ hiểu
(Ta sẽ dùng sự kiện ComboBox1_Change trong các trường hợp khác có đòi hỏi LỌC theo kiểu từ điển)
 
Upvote 0
Đây chỉ là ví dụ, thực tế dữ liệu trong ComboBox ít khi nào là 1 ký tự. Vì thế nên dùng sự kiện ComboBox1_Click hơn là ComboBox1_Change ---> Bạn thử mở form và nhập bằng tay vào ComboBox xem sẽ hiểu
(Ta sẽ dùng sự kiện ComboBox1_Change trong các trường hợp khác có đòi hỏi LỌC theo kiểu từ điển)
Sao khi em thí nghiệm rút ra kết luận là nếu dùng sự kiện click thì bắt buộc phải chọn dữ liệu trong combobox, còn sự kiện change thì ta có thể nhập thoải mái bằng tay vào combobox. Mà có 1 trường hợp mà ta lưu ý nếu chọn trong properties Stype mà chọn 2-fmstypeDropdrowlist thì cũng giống sự kiện click. Thường ngày em dùng sự kiện change nhiều hơn nên không tìm hiểu sự kiện click. Thanks anh
 
Upvote 0
Đúng rồi, cảm ơn bác nhiều, cho hỏi thêm, vậy mình muốn các chữ cái A,B,C,...Cho nó nằm tại ô D1 hay D2 gì đó thì viết code như thế nào vậy bác, rất ham muốn học hỏi

Sau khi thực hiện theo thầy NDU thì thêm cái này

PHP:
Private Sub ComboBox1_Change()
  On Error Resume Next
  Range("D1")=ComboBox1.Value
End Sub
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom