ThanhLuanITC
Thành viên mới

- Tham gia
- 20/4/10
- Bài viết
- 8
- Được thích
- 0
bạn nào biết liên kế các sheet thông qua combobox chỉ giúp mình với . Thanks
Liên kết các sheet qua combobox? là sao vậy bạn, là lấy dữ liệu của sheet khác cho vào combobox hay là lấy sheetname đưa vào combobox click chọn nó, nó sẽ chuyển đến sheet vừa chọn???bạn nào biết liên kế các sheet thông qua combobox chỉ giúp mình với . Thanks
nói rõ chút chứ nhờ muốn liên kết kiểu gì? hay chỉ cần tạo cái nút trên sheet 1, sau đó nhấn cái nút đó thì nó chuyển qua sheet 2?bạn nào biết liên kế các sheet thông qua combobox chỉ giúp mình với . Thanks
Private Sub CommandButton1_Click()
Sheet2.Select
End Sub
khi mình vẽ nó không có chứa tất cả các tên sheet bạn à. Bạn chỉ rõ giùm mình với, mình gà lắm, thanks- Trong ComboBox sẽ chứa tất cả các tên sheet
- Chọn tên sheet nào thì sẽ link đến sheet ấy
Private Sub cbxWs_Change()
Sheets(Me.cbxWs.Value).Activate
MsgBox "Ban dang o sheet " & cbxWs.Value
End Sub
Private Sub UserForm_Initialize()
For i = 1 To Sheets.Count
cbxWs.AddItem Sheets(i).Name
Next i
End Sub
trên UserForm ta làm dể hơn ăn khoaiInsert 1 Userform, 1 combobox đặt tên cho combobox đó là cbxWs
Code trong Userform như sau
Bạn xem thêm file nhéMã:Private Sub cbxWs_Change() Sheets(Me.cbxWs.Value).Activate MsgBox "Ban dang o sheet " & cbxWs.Value End Sub Private Sub UserForm_Initialize() For i = 1 To Sheets.Count cbxWs.AddItem Sheets(i).Name Next i End Sub
Cái đó thì nói làm gì
Vấn đề ở đây là THÁCH ĐỐ các bạn làm yêu cầu này bằng ComboBox trên sheet đấy!
Ẹc... Ẹc...
Yêu cầu:
- Code càng gọn càng tốt
- Chạy càng ít gây lỗi càng tốt
- Càng ít dùng đến vùng phụ càng tốt
Private Sub Worksheet_activate()
ComboBox1.Clear
For i = 1 To Sheets.Count
ComboBox1.AddItem Sheets(i).Name
Next i
End Sub
Private Sub ComboBox1_Change()
On Error Resume Next
Sheets(Me.ComboBox1.Value).Activate
End Sub
Làm như vầy được không Thầy? Em thì ít kiến thức lắm, mong chỉ giáo ạ!
PHP:Private Sub Worksheet_activate() ComboBox1.Clear For i = 1 To Sheets.Count ComboBox1.AddItem Sheets(i).Name Next i End Sub Private Sub ComboBox1_Change() On Error Resume Next Sheets(Me.ComboBox1.Value).Activate End Sub
Nhìn sơ qua tôi nghi ngờ rằng code chẳng chạy được! Tuy nhiên, cứ đưa file lên đây test thử xem nào
Em thì cho rằng dùng sự kiện DropButtonClick mới hợp lý nhất ---> Có bấm vào mũi tên thì có nạp list, không bấm thì thôiThực ra, ở sheet cũng vậy thôi. Cái mấu chốt ở đây là chọn sự kiện nào để nạp Combo cho hợp lý mà thôi
Theo mình có 2 thời điểm phải nạp để số liệu trên Combo luôn cập nhật đó là:
1/ Workbook Open
2/Worksheet Active
Nếu đã nạp theo Each sheet thì có 1 cách nữa để chọn chuyển tới sheet được chọn đó là:
Sheets(ComboBox1.ListIndex + 1).Select
Các bạn tham khảo file kèm
Một chọn lựa quá hay ấy chớ. Nhưng với điều kiệm nạp dữ liệu ít thôi chứ nhiều dùng sự kiện này có cảm giác Combo bị "đơ" 1 chút vì chờ nạp.Em thì cho rằng dùng sự kiện DropButtonClick mới hợp lý nhất ---> Có bấm vào mũi tên thì có nạp list, không bấm thì thôi
Đương nhiên, có xài thì người ta mới bấm chứ! Lúc ấy nạp dữ liệu cho ComboBox là không sai vào đâu được!
Em thì cho rằng dùng sự kiện DropButtonClick mới hợp lý nhất ---> Có bấm vào mũi tên thì có nạp list, không bấm thì thôi
Đương nhiên, có xài thì người ta mới bấm chứ! Lúc ấy nạp dữ liệu cho ComboBox là không sai vào đâu được!
Bạn tự tay gõ vào, đồng nghĩa bạn muốn "cái gì khác" chứ không cần đến list ---> Vậy nạp list làm chi? Ẹc... Ẹc...Em nghĩ cần phối hợp với nhiều hình thức nạp dữ liệu cho Cobobox, bởi có người thì bấm vào combobox, có người không bấm mà gõ chữ, nếu gõ mà combobox chưa nạp thì cũng không có ra phải không ạ?
Khi 1 combobox có list sẵn, thí dụ vài chục tên sheet, người ta muốn đến 1 sheet nà ođó mà người ta nhớ tên (mang máng), người ta gõ vài ký tự, combobox sẽ gợi ý ngay cho 1 tên sheet, enter là chuyển đến sheet đó ngay. Có khi nhanh hơn là click combobox và kéo thanh cuộn.Bạn tự tay gõ vào, đồng nghĩa bạn muốn "cái gì khác" chứ không cần đến list ---> Vậy nạp list làm chi? Ẹc... Ẹc...
[/URL][/B]
Câu hỏi của bạn chưa rõ ràng, bạn đợi trả lời chắc là hơi lâu đấyThanks các bạn nhiều.
Cho mình hỏi thêm, nếu mình đang ở sheet 1, mình có thể lấy dữ liệu của sheet 2, 3,4 .... thay cho dữ liệu sheet 1 bằng cách Combo Box không các bạn, nếu làm đc thì như nào vậy ạ? thanks