Chú ý: Các thành viên học lớp "Lập trình VBA trong Excel" có thể trao đổi bài ở đây

Liên hệ QC
em gửi thầy BTVN-Ribbon, thuộc tính getEnabled e chưa làm được, thầy xem bài rồi góp ý cho e với. E cám ơn thầy !
 

File đính kèm

  • BTVN-Ribbon.rar
    12.2 KB · Đọc: 17
Lần chỉnh sửa cuối:
Để thay đổi trạng thái nút bấm Enabled = true/false thì phải khai báo làm thêm các thộc tính sau:

1. Khai báo thêm thuộc tính Callback là onLoad ở khoá XML customUI
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" onLoad="OnLoadUI">

2. Tại nút bấm nhận trạng thái Enable = true/false phải khai báo thêm thuộc tính Callback là getEnabled
Ví dụ:
<button id="customButton2" label="File Đính Kèm" size="normal" onAction="fileDinhKem" imageMso="AttachMenu" supertip="Bạn chọn File ở đây" getEnabled="OnGetEnabled" />


Sau khi sửa như trên, mở file Excel có menu Ribbon, vào VBA/VBE khai báo thêm hai thủ tục callback OnLoadUI, OnGetEnabled trong Module.

Mã:
Public MyRibbonUI As IRibbonUI [COLOR="darkgreen"]'Biến nhận điều khiển Ribbon[/COLOR]
Dim bHasFile As Boolean [COLOR="darkgreen"]'Biến nhận trạng thái Enabled[/COLOR]
[COLOR="green"]'Callback for customUI.onLoad
'Get instance to RibbonUI[/COLOR]
Sub [COLOR="blue"]OnLoadUI[/COLOR](ribbon As IRibbonUI)
    Set MyRibbonUI = ribbon
End Sub

[COLOR="green"]'Callback for customButton getEnabled[/COLOR]
Sub [COLOR="blue"]OnGetEnabled[/COLOR](control As IRibbonControl, ByRef returnedVal)
    returnedVal = bHasFile
End Sub

[COLOR="green"]
'Callback for customButton1 onAction[/COLOR]
Sub guiThuKemFile(control As IRibbonControl)
    bHasFile = Not bHasFile
[COLOR="green"]    'Refresh "File Dinh Kem" button[/COLOR]
    MyRibbonUI.InvalidateControl "customButton2" [COLOR="darkgreen"]'"[B]customButton2[/B]" là id của nút "File Đính Kèm"[/COLOR]
[COLOR="green"]    'Answer[/COLOR]
    MsgBox "Thu nay " & IIf(bHasFile, "phai", "khong") & " chua file di kem"
End Sub


Mình gửi hai bài đã sửa lại cho 2 bạn Huongchuoi và ZeroX. Các bạn hãy mở mã nguồn XML để xem và tìm hiểu thêm hai thuộc tính mới nhé.

Chạy kiểm tra:
Bài của Huongchuoi. Bấm vào nút "Gửi Thư Kèm File" thì nút "File Đính Kèm" sáng.
Bài của ZeroX. Bấm vào nút "Tính Toán" thì nút "Kiểm Tra" sáng.


Mới học một buổi về tạo menu Ribbon mà làm được thế này là quá tốt rồi, buổi ngày Thứ 5 mình sẽ hướng dẫn các bạn nâng cao hơn về kỹ thuật tạo menu Ribbon.

Với các bạn đã nghỉ buổi học hôm trước, cần liên hệ các bạn đã đi học hôm Thứ 3 để học nếu không buổi ngày Thứ 5 sẽ rất khó nắm bắt cùng.
 

File đính kèm

  • BTVN-Ribbon_Fixed.rar
    14.9 KB · Đọc: 29
  • Huongchuoi - btvn ve menu ribbon_Fixed.rar
    13.5 KB · Đọc: 28
Lần chỉnh sửa cuối:
Bài học về menu này quá hay, xin lỗi vì em đang công tác nên không làm bài gửi lên mạng được.
Ai hôm thứ 3 không đi học thì rất phí, nên xem và thứ 5 đi học lại. Thứ 5 cũng là buổi cuối rồi

Em đang có nhu cầu học nâng cao hơn nữa. Lớp mình có ai cũng có nhu cầu như em liên lạc để tổ chức học thêm nha.
 
Bài học về menu này quá hay, xin lỗi vì em đang công tác nên không làm bài gửi lên mạng được.
Ai hôm thứ 3 không đi học thì rất phí, nên xem và thứ 5 đi học lại. Thứ 5 cũng là buổi cuối rồi

Em đang có nhu cầu học nâng cao hơn nữa. Lớp mình có ai cũng có nhu cầu như em liên lạc để tổ chức học thêm nha.

Học lớp mới thì từ từ cái đã chớ. Chờ một thời gian để còn tiêu hoá cái cũ đã chứ. Tối nay 02/12/2010 bài học mình thấy rất hay nhưng hơi tiếc mọi người đi học không đủ.
Lấy ý kiến mọi người xem hôm nào tổ chức tổng kết lớp nhỉ?
 
Đây là bài viết về Những nguyên tắc cơ bản xây dựng phần mềm trên Excel để lớp học tham khảo.
 

File đính kèm

  • Nhung nguyen tac xay dung phan mem tren Excel.rar
    107.5 KB · Đọc: 43
Bài học về menu này quá hay, xin lỗi vì em đang công tác nên không làm bài gửi lên mạng được.
Ai hôm thứ 3 không đi học thì rất phí, nên xem và thứ 5 đi học lại. Thứ 5 cũng là buổi cuối rồi

Em đang có nhu cầu học nâng cao hơn nữa. Lớp mình có ai cũng có nhu cầu như em liên lạc để tổ chức học thêm nha.

hôm nay học rất hay anh Thắng ah. tiếc là anh ko đi đc. còn vụ học nâng cao thì chắc phải để ra tết đi anh. để mọi người ngấm đã. hơn nữa em nghĩ là cũng nên bổ sung thêm kiến thức về lập trình C hoặc C++. như hôm trước thầy Tuân nói là lớp nâng cao ko cần nhìu người. chỉ khoảng 5 người là ok nhưng trình độ phải đồng đều. có em vs anh là 2 người rùi. hehehehehe
 
Đây là bài viết về Những nguyên tắc cơ bản xây dựng phần mềm trên Excel để lớp học tham khảo.
Cám ơn thầy Hướng về tài liệu rất hay này. Thầy Hướng cho em hỏi: Em đã tải phần mềm Inno Setup về cài rùi nhưng phiên bản này nó bắt mua hay sao đó ah?
Thầy gửi cho em xin phần mềm Inno Setup (bản free) và gửi vào mail: ngoc.dak@gmail.com dùm em nhé!
Cám ơn thầy Hướng nhiều!
 
Cám ơn thầy Hướng về tài liệu rất hay này. Thầy Hướng cho em hỏi: Em đã tải phần mềm Inno Setup về cài rùi nhưng phiên bản này nó bắt mua hay sao đó ah?
Thầy gửi cho em xin phần mềm Inno Setup (bản free) và gửi vào mail: ngoc.dak@gmail.com dùm em nhé!
Cám ơn thầy Hướng nhiều!

Tiếc là cậu không đi mấy buổi vừa rồi, thầy Tuân có mấy bài rất hay về Ribbon (tuy nhiên học kiểu xml này cũng hơi mệt %#^#$).

Inno Setup 5 là bản miễn phí mà, em tải ở đây
 

File đính kèm

  • isetup-5.2.2.rar
    1.3 MB · Đọc: 59
Tiếc là cậu không đi mấy buổi vừa rồi, thầy Tuân có mấy bài rất hay về Ribbon (tuy nhiên học kiểu xml này cũng hơi mệt %#^#$).

Inno Setup 5 là bản miễn phí mà, em tải ở đây

Vâng, cám ơn thấy Hướng. Thời gian vừa rùi em bận quá! Em biết học cái đó khó nhưng rất hay. Em rất tiếc!
 
Anh Minh ơi, Ra tết học nâng cao được không anh? Anh tổ chức lớp nữa nha.
 
Em gửi bài tập của em hôm thứ 3, mặc dù hơi muộn. Bài tập cũng là một chút thư giãn với lớp, mong các thầy góp ý. (nếu có gì không phải mong các anh chị bỏ qua nhé, Vui là chính ạ)

Đề bài: Làm một menu Ribbon trong đó vừa có menu cũ của office, vừa có menu mới riêng. Trong Tab mới vừa có nút bấm của office, vừa có các nút bấm riêng. Các nút bấm phải đảm bảo có các thuộc tính hiện: Label, Screentip, Supertip. Tạo một nút bấm mà trạng thái enable = false. (menu tiếng việt).

Hôm qua (thứ 5) có bài tập gì không vậy ạ?
 

File đính kèm

  • Bai tap menu.rar
    36 KB · Đọc: 38
Em gửi bài tập của em hôm thứ 3, mặc dù hơi muộn. Bài tập cũng là một chút thư giãn với lớp, mong các thầy góp ý. (nếu có gì không phải mong các anh chị bỏ qua nhé, Vui là chính ạ)

Đề bài: Làm một menu Ribbon trong đó vừa có menu cũ của office, vừa có menu mới riêng. Trong Tab mới vừa có nút bấm của office, vừa có các nút bấm riêng. Các nút bấm phải đảm bảo có các thuộc tính hiện: Label, Screentip, Supertip. Tạo một nút bấm mà trạng thái enable = false. (menu tiếng việt).

Hôm qua (thứ 5) có bài tập gì không vậy ạ?
A lố...Alô.... Huongchuoi đâu rùi. Dow file về test đi. Chắc đêm nay chỉ ngồi bấm cái Icon "trái tim" thôi ah. Nếu hỏng chuột ngoài thì dùng chuột Laptop nhé. Nghe giang hồ đồn thổi thangacc cài 1 đoạn code bí mật, nếu click vào "trái tim" 9999^1000 lần thì nó sẽ hiện lên Msgbox với lời nhắn:........ Click đủ mới biêt. Không chơi ViewCode đâu nhé. Code này ẩn rùi. :))
 
A lố...Alô.... Huongchuoi đâu rùi. Dow file về test đi. Chắc đêm nay chỉ ngồi bấm cái Icon "trái tim" thôi ah. Nếu hỏng chuột ngoài thì dùng chuột Laptop nhé. Nghe giang hồ đồn thổi thangacc cài 1 đoạn code bí mật, nếu click vào "trái tim" 9999^1000 lần thì nó sẽ hiện lên Msgbox với lời nhắn:........ Click đủ mới biêt. Không chơi ViewCode đâu nhé. Code này ẩn rùi. :))


thế anh cũng mất cả đêm ah???
 
em đã phát hiện ra. anh Minh dám lừa em nha. a cứ chờ xem em sẽ xử lý anh như thế nào
 
Em gửi bài tập của em hôm thứ 3, mặc dù hơi muộn. Bài tập cũng là một chút thư giãn với lớp, mong các thầy góp ý. (nếu có gì không phải mong các anh chị bỏ qua nhé, Vui là chính ạ)

Đề bài: Làm một menu Ribbon trong đó vừa có menu cũ của office, vừa có menu mới riêng. Trong Tab mới vừa có nút bấm của office, vừa có các nút bấm riêng. Các nút bấm phải đảm bảo có các thuộc tính hiện: Label, Screentip, Supertip. Tạo một nút bấm mà trạng thái enable = false. (menu tiếng việt).

Hôm qua (thứ 5) có bài tập gì không vậy ạ?

So với buổi học hôm Thứ 3 vừa rồi thi bài làm rất tốt. Thắng liên hệ HuongChuoi để lấy bài hôm Thứ 5, bài nài nâng cao kỹ thuật tạo Ribbon và công cụ hỗ trợ việc tạo XML Ribbon rất dễ dùng.
 
em đã phát hiện ra. anh Minh dám lừa em nha. a cứ chờ xem em sẽ xử lý anh như thế nào

Hương bấm 1000 lần à? khổ thân em. Do yêu cầu của đề bài nên mới cần phải có trái tim kia, cũng là chút thư giãn.
Em có file bài hôm thứ 5 của thầy có thể zip nó lại rồi gửi mail giúp anh không?
 
Hương bấm 1000 lần à? khổ thân em. Do yêu cầu của đề bài nên mới cần phải có trái tim kia, cũng là chút thư giãn.
Em có file bài hôm thứ 5 của thầy có thể zip nó lại rồi gửi mail giúp anh không?

e chưa bấm 1000 lần đâu, nhưng cũng phải đến chục lần có dư và em phát hiện ra mình bị lừa.:=\+:=\+:=\+:=\+:=\+:=\+
lần này em sẽ cho anh Minh biết tay..........
ANH MINH HÃY XEM ĐÂY.......)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@)(&&@@
mà sao phải ấn vào trái tim thì em mới được xuất hiện.???????
anh đưa địa chỉ mail để em gửi cho
 
mail của anh thangacc@gmail.com
Lý do tại sao phải ấn vào trái tim thì em cứ để chuột lên trên cái logo của em nó sẽ hiện lên nhé. Đây là bài anh làm theo đúng yêu cầu của thầy mà (có cả supertip)
 
mail của anh thangacc@gmail.com
Lý do tại sao phải ấn vào trái tim thì em cứ để chuột lên trên cái logo của em nó sẽ hiện lên nhé. Đây là bài anh làm theo đúng yêu cầu của thầy mà (có cả supertip)

ý em là em với cái trái tim đấy có liên quan j đến nhau. a nên chọn logo có 1 nửa trái tim thôi
 
có vẻ như anh Minh sợ quá bỏ cả diễn đàn rùi ah?????????
 
Web KT
Back
Top Bottom