Lập trình sử dụng CheckBox trong VBA

baihocdautien

Thành viên mới
Tham gia ngày
22 Tháng mười 2009
Bài viết
2
Được thích
0
Điểm
0
Tuổi
39
Chào các bạn,

Mình đang viết một chương trình đơn giản để hỗ trợ cho việc học từ vựng tiếng Anh của mình.

Vì mình cũng tự tìm hiểu VBA nên gặp rất nhiều khó khăn.

Trong ví dụ mình đính kèm theo.

http://www.mediafire.com/file/jjk40jmmmjn/word everydayV1.xls

Có một số CheckBox như là: Example1, Example2,....Các checkbox này tương ưng với việc xác định và hiển thị/ hoặc không hiển thị nội dung của Ví dụ 1, ví dụ 2 tương ứng với từ được chọn. Thông tin về từ được chọn nằm ở phần Word's Location: bao gồm: Từ đó nằm ở Sheet nào, Số thứ tự bao nhiêu, hàng thứ bao nhiêu.

Nếu làm việc này trực tiếp trên Worksheet của Excel (không dùng CheckBox) thì mình làm được, nhưng khi dùng CheckBox thì mình không biết viết lệnh thế nào cho VBA hiểu được.

Nhờ các bạn chỉ giáo dùm mình.

Cụ thể là:
- Khi check vào checkbox1 thì ví dụ 1 của từ đó sẽ hiển thị lên ô B15 của Sheet Main, và khi không chọn vào thì ví dụ này bị xoá đi.
- Nhân tiện, mình cũng muốn làm thêm phần Search, các bạn hướng dẫn mình dùm luôn nhe.

Cảm ơn các bạn rất nhiều.

Ghi chú:
- Từ vựng của mình lưu trong các sheet từ Part1 tới Part 10 theo quy luật: Mỗi từ vựng chiếm 1 hàng, 2 hàng kế tiếp là 2 ví dụ, 1 hàng trống rồi đến từ kế tiếp.
- Nút nhấn Chaning Word: mỗi lần nhấn vào sẽ cho ta thông tin của một từ mới một cách ngẫu nhiên.
 

nghiaphuc

Thành viên gạo cội
Thành viên danh dự
Tham gia ngày
25 Tháng chín 2009
Bài viết
5,722
Được thích
9,526
Điểm
610
Nơi ở
Ayun Pa - Gia Lai
Chào các bạn,

Mình đang viết một chương trình đơn giản để hỗ trợ cho việc học từ vựng tiếng Anh của mình.

Vì mình cũng tự tìm hiểu VBA nên gặp rất nhiều khó khăn.

Trong ví dụ mình đính kèm theo.

http://www.mediafire.com/file/jjk40jmmmjn/word everydayV1.xls

Có một số CheckBox như là: Example1, Example2,....Các checkbox này tương ưng với việc xác định và hiển thị/ hoặc không hiển thị nội dung của Ví dụ 1, ví dụ 2 tương ứng với từ được chọn. Thông tin về từ được chọn nằm ở phần Word's Location: bao gồm: Từ đó nằm ở Sheet nào, Số thứ tự bao nhiêu, hàng thứ bao nhiêu.

Nếu làm việc này trực tiếp trên Worksheet của Excel (không dùng CheckBox) thì mình làm được, nhưng khi dùng CheckBox thì mình không biết viết lệnh thế nào cho VBA hiểu được.

Nhờ các bạn chỉ giáo dùm mình.
- Trước hết, xin góp ý với bạn một xíu về bố trí dữ liệu: Theo mình thì bạn nên gom tất cả dữ liệu của 10 sheet Part1 -> Part10 vào chung trong 1 sheet, thông tin của mỗi từ nằm trên 1 hàng. Như vậy, dữ liệu vừa tập trung, vừa dễ khai thác. Hơn nữa, bố trí như vậy cũng sẽ làm file gọn gàng hơn.
- Bạn xem trong file đính kèm nhé. Ở đây, mình đã gom toàn bộ dữ liệu của 10 sheet Part1 -> Part10 vào 1 sheet Data (sheet này đang ẩn, bạn có thể vào VBE, chọn sheet và đặt thuộc tính Visible là xlSheetVisible để sửa dữ liệu). Riêng 2 checkbox Synonym và Antonym, mình không biết dùng làm gì (tiếng Anh mình tệ lắm) nên mình chỉ để trên form cho "đẹp" thôi, bạn viết code cho 2 checkbox này nhé.
 

File đính kèm

baihocdautien

Thành viên mới
Tham gia ngày
22 Tháng mười 2009
Bài viết
2
Được thích
0
Điểm
0
Tuổi
39
Cảm ơn bạn Nghĩa Phúc đã giúp mình làm chương trình My Dictionary.
Cho mình hỏi chút là vì mình muốn chia dữ liệu ra làm nhiều sheet với các chủ đề khác nhau để dễ cập nhật và quản lý thì có nên để ở nhiều sheet không hay là đặt cho nó 1 cái mã gì đó và gôm vào chung 1 sheet ?
 

nghiaphuc

Thành viên gạo cội
Thành viên danh dự
Tham gia ngày
25 Tháng chín 2009
Bài viết
5,722
Được thích
9,526
Điểm
610
Nơi ở
Ayun Pa - Gia Lai
Cảm ơn bạn Nghĩa Phúc đã giúp mình làm chương trình My Dictionary.
Cho mình hỏi chút là vì mình muốn chia dữ liệu ra làm nhiều sheet với các chủ đề khác nhau để dễ cập nhật và quản lý thì có nên để ở nhiều sheet không hay là đặt cho nó 1 cái mã gì đó và gôm vào chung 1 sheet ?
Theo mình thì bạn vẫn nên để dữ liệu ở chung 1 sheet, bởi vì mỗi từ đều có 1 thông tin (Part1 -> Part10) giúp bạn phân loại rồi. Khi cập nhật thông tin (thêm từ), bạn cần cung cấp thêm thông tin này để dễ phân loại. Hơn nữa, bạn có thể Sort dữ liệu theo Part.
P/S: Trong file đính kèm dưới đây, mình đã bổ sung thêm chức năng xóa từ hiện có (Delete selected word) và chức năng thêm từ mới (Add new word). Với chức năng thêm từ mới, sau khi nhập đầy đủ thông tin và nhấn nút Add this word, từ mới nhập sẽ được thêm vào trong CSDL của chương trình, đồng thời, dữ liệu sẽ được Sort theo Part và nội dung từ (theo thứ tự Alphabet). Nếu bạn có ý tưởng gì mới mà chưa làm được thì đưa lên để mọi người cùng thảo luận nhé.
Chúc thành công!
 

File đính kèm

Lần chỉnh sửa cuối:

songtra8x

Thành viên mới
Tham gia ngày
25 Tháng năm 2007
Bài viết
5
Được thích
1
Điểm
665
Tuổi
38
Thiết kế Form quản lý hồ sơ

Tôi cũng đã modify lại file thiết kế từ điển này thành file quản lý hồ sơ phục vụ cho công việc. Nhưng khi modify lại tôi không thể làm cho chương trình chạy được. mong mọi người giúp đỡ. xin chân thành cảm ơn
 

File đính kèm

ki_calvin

Thành viên hoạt động
Tham gia ngày
14 Tháng bảy 2007
Bài viết
125
Được thích
3
Điểm
670
em cũng dùng thiết kế tạo thêm nhiều ứng dụng tạo công cụ kiềm kiếm,nhưng khi em thêm vài code nữa và thêm vài example no không hiện ra .bên cạnh đó em muốn tạo thêm một checkbox all .vì em thì viết code như thế naò.anh chị naò biết huơng dân em .
 
Lần chỉnh sửa cuối:

nghiaphuc

Thành viên gạo cội
Thành viên danh dự
Tham gia ngày
25 Tháng chín 2009
Bài viết
5,722
Được thích
9,526
Điểm
610
Nơi ở
Ayun Pa - Gia Lai
em cũng dùng thiết kế tạo thêm nhiều ứng dụng tạo công cụ kiềm kiếm,nhưng khi em thêm vài code nữa và thêm vài example no không hiện ra .bên cạnh đó em muốn tạo thêm một checkbox all .vì em thì viết code như thế naò.anh chị naò biết huơng dân em .
Vấn đề thêm Checkbox All, bạn tham khảo file sau nhé.
Còn yêu cầu trước, bạn nên nói rõ hơn để mọi người biết mà giúp đỡ.
 

File đính kèm

ki_calvin

Thành viên hoạt động
Tham gia ngày
14 Tháng bảy 2007
Bài viết
125
Được thích
3
Điểm
670
y em là như thế nay anh chị xem giúp em xem ah?em chân thành cam ơn.
 

File đính kèm

ki_calvin

Thành viên hoạt động
Tham gia ngày
14 Tháng bảy 2007
Bài viết
125
Được thích
3
Điểm
670
hix sao không ai giúp em tí.em đang cần nghiên cứu đễ làm !
 

nghiaphuc

Thành viên gạo cội
Thành viên danh dự
Tham gia ngày
25 Tháng chín 2009
Bài viết
5,722
Được thích
9,526
Điểm
610
Nơi ở
Ayun Pa - Gia Lai
y em là như thế nay anh chị xem giúp em xem ah?em chân thành cam ơn.
Theo mình thì không cần thiết phải làm trên 2 sheet và cũng không nên đổi tên 2 checkbox là hanoi và hcm vì biết đâu vào 1 ngày đẹp trời nào đó, bạn muốn thêm 1 số tỉnh thành vào CSDL thì sao, chẳng lẽ 64 tỉnh thành, bạn phải dùng 64 sheet và 64 checkbox sao?
Trong file đính kèm, mình dồn tất cả dữ liệu vào 1 sheet Data theo quy tắc: Nếu mã của Hà Nội là A thì tất cả quận, huyện, xã, thôn... của Hà Nội đều có mã bắt đầu bởi A, quận Hoàn Kiếm có mã là A1 thì các phường của Hoàn Kiếm sẽ có mã là A1? (? là 1 ký tự nào đó),... Việc này sẽ rất thuận lợi khi tìm và liệt kê trong các combo box trên form. Bạn tham khảo trên file đính kèm nhé. Còn vấn đề thêm hay xóa 1 đơn vị trong CSDL thì cần nghiên cứu thêm...
Chúc thành công!
 

File đính kèm

ki_calvin

Thành viên hoạt động
Tham gia ngày
14 Tháng bảy 2007
Bài viết
125
Được thích
3
Điểm
670
da.trước em chân thành cảm ơn anh nhiều lắm.đã dành thời gian hướng dẫn cho em.thật ra em định làm là 64 tỉnh thành,nhưng vì có tới 64 tỉnh thảnh của một lạoi sản phẩm mang loại A ,và 64 tỉnh lạoi B,nhưng em chia nhỏ ra để đặt câu hỏi.nếu trong trường hợp như vậy mình làm sao hả anh.vì em nghĩ nếu trong trường hợp ít thì không sau.nhựng mà nhiều sheet dữ liệu thì mình copy trong cùng một sheet chung thì rất lộn xộn.nên em chia ra nhiều sheet .nên em có ý tạo một listbox để chọn loại A,B...nhưng dùng nhiều sheet thì em chịu chưa biết làm sao.đê chọn loai A ,thì khi em cần thông tin của loai A của tỉnh đó hiện ra của loai A ,tương tu B như vậy.nên lúc trước em hỏi anh chọn check1 và 2 ý đố của em là đại diên của sản phâm của lạoi A hay của B.mong anh giúp đở.
 
Lần chỉnh sửa cuối:
Top Bottom