Xin chỉ giúp tôi cách hiện thị số lên textbox

Liên hệ QC

trungnt

Thành viên hoạt động
Tham gia
2/2/07
Bài viết
135
Được thích
88
Hiện nay, tôi đã làm được lấy số liệu từ sheet cho hiện thị lên textbox ở trong form, nhưng excel chỉ cho hiện số liệu từ 1 sheet cố định duy nhất (hình như excel ngầm định). Ý của tôi ở đây là khi chọn sheet nào thì lấy số liệu của sheet đó hiện thị lên text box của form (ở đây trong mỗi sheet tôi có thiết kế 1 nút lệnh, khi bấm vào nút lệnh sẽ show form mà tôi đã thiết kế sẵn, trong form tôi có đặt các textbox để cho hiện thị số liệu) nhưng cho đến nay tôi chưa làm được và mong các anh chị trong diễn đàn chỉ giúp tôi. Tôi xin cám ơn nhiều nhiều......, code tôi đã viết như sau:(khi chạy code thì excel cứ lấy số liệu mặc định từ Sheets("BTKCAU4L") để hiện thị mặc dù đã chọn sheet khác)
Private Sub UserForm_Activate()
txtHD = ""
txtE = ""
txtphi = ""
txtTaxP = ""
If Sheets("BTKCAU1L").Select Then
With Worksheets("BTKCAU1L")
txtHD = .[F62]
txtE = .[F63]
txtphi = .[K32]
txtTaxP = .[J64]
End With
End If
If Sheets("BTKCAU2L").Select Then
With Worksheets("BTKCAU2L")
txtHD = .[F73]
txtE = .[F74]
txtphi = .[K36]
txtTaxP = .[J75]
End With
End If
If Sheets("BTKCAU3L").Select Then
With Worksheets("BTKCAU3L")
txtHD = .[F78]
txtE = .[F79]
txtphi = .[K39]
txtTaxP = .[J80]
End With
End If
If Sheets("BTKCAU4L").Select Then
With Sheets("BTKCAU4L")
txtHD = .[F82]
txtE = .[F83]
txtphi = .[K41]
txtTaxP = .[J84]
End With
End If
End Sub
 
Bạn sửa các câu lệnh :
If Sheets("BTKCAU...").Select Then thành
If ActiveSheet.Name = "BTKCAU..." Then
 
Bạn trungnt, bạn có thể gửi file lên diễn đàn được không?? Thanks... Có một cách đơn giản nhất là mỗi Sheet khác nhau bạn đặt một Form khác nhau và nút lệnh gọi form cho từng Form đó vậy là xong..
 

File đính kèm

  • ShowTextbox.rar
    16.1 KB · Đọc: 119
Lần chỉnh sửa cuối:
Tôi chỉnh sửa thành công theo ý của anh Voda. Cảm ơn anh rất nhiều..... chúc 2 anh sang năm mới thật nhiều sức khỏe và gặt hái nhiều thành công!
 
boong đã viết:
Bạn trungnt, bạn có thể gửi file lên diễn đàn được không?? Thanks...
Có một cách đơn giản nhất là mỗi Sheet khác nhau bạn đặt một Form khác nhau và nút lệnh gọi form cho từng Form đó vậy là xong..
Boong ơi làm một form thôi nhiều quá ha theo ý của bác Voda mình thấy OK. dùng một form cho nhiều sheets. Mình mượn file của bạn nhé.
 

File đính kèm

  • ShowTextbox.xls
    41 KB · Đọc: 102
4 đoạn code này gần như giống nhau về cấu trúc, ai lại viết cho dài lê thê thế... sao ko rút gọn lại thành 1, dùng hàm CHOOSE đễ chọn giá trị nhỉ (Index trong CHOOSE chính là số 1, 2, 3, 4 nằm trong tên sheet ấy)
Đại khái như sau:
PHP:
Private Sub UserForm_Activate()
txtHD = ""
txtE = ""
txtphi = ""
txtTaxP = ""
TK = Mid(ActiveSheet.Name, 7, 1) * 1
txtHD = Choose(TK, [F62], [F73], [F78], [F82])
txtE = Choose(TK, [F63], [F74], [F79], [F83])
txtphi = Choose(TK, [K32], [K36], [K39], [K41])
txtTaxP = Choose(TK, [J64], [J75], [J80], [J84])
End Sub
Tôi nghĩ vẫn còn nhiều cách khác nữa... Có cãm giác là có thể truyền tham số vào trong dấu ngoặc cũa UserForm_Activate()... nhưng tiếc rằng trình độ cũa tôi bèo quá nên chưa nghĩ ra dc cách này!
ANH TUẤN
 
Lần chỉnh sửa cuối:
Các anh chị thân mến
Em down file và có thấy user form, các anh chị có thể chỉ cho em cách tạo và sử dụng nó không?
Cám ơn anh chị nhiều.
 
Tạo form cũng không khó, cái khó là gán lệnh cho các object trên form.
1. Tạo form: click phải vào this workbook trong cửa sổ code, insert user form.
- User form có các thuộc tính riêng của nó xem trong Property và tìm hiểu. Thường dùng property Caption: tiêu đề form, Show Modal: true = khi kích hoạt, click chuột ra ngoài form (vào sheet, vào form khác) không tác dụng
- User form có các sự kiện có thể gán macro cho sự kiện đó, thường dùng sự kiện initial, activate, deactivate

2. gắn các object trên toolbox vào form: Combobox, list box, command button, label, text box, checkbox, option button, scroll bar, RefEdit. Mỗi object đều có các property và các sự kiện có thể gán macro.

Xem bài này, có 1 form nhập liệu đơn giản:
http://www.giaiphapexcel.com/forum/s...4818#post54818
Bạn tham khảo xong coi bài kế đó có 1 form sử dụng 2 mục đích nhập liệu, bằng cách thay đổi property của các object và thay dổi dòng lệnh trong macro. Đồng thời sử dụng sự kiện Form_activate hoặc Form_initial.

Bạn tự nghiên cứu, có gì thắc mắc thì hỏi thêm.
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom