[Add-Ins] User Form VBA As TaskPane - For Ms Office : Excel - Word - Access - PowerPoint - Outlook

Liên hệ QC

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,044
Được thích
3,759
Giới tính
Nam
1/ Khai Hoang và mở đường chủ đề sau ( Chi tiết và quá trình thực hiện ... )

2/ Ứng dụng đã hoàn thiện và trưng bày

3/ Trưng bày và giới thiệu chủ đề này

*** Hổ trợ Nhúng User Form VBA vào TaskPane bao gồm Ms Office : Excel - Word - Access - PowerPoint - Outlook
*** Hổ trợ kéo thả và di chuyển User Form trong giao diện Excel

4/ Giao diện TaskPane phẳng như sau

1674047172478.png


5/ Giao diện kéo lên trên nền Excel
1674091032811.png

7/ User Form VBA chính là nơi Bạn thể hiện Tài Năng Or Khả Năng của chính Bạn ...
Còn TaskPane chỉ là Tools hổ trợ Bạn thể hiện tài năng của chính Mình

8/ Code đơn giản hóa như sau ... chỉ cần Viết 1 Hàm phụ xong truyền các tham số vào sử dụng cho nhiều Form khác
Vì Tôi làm biếng Viết nên làm vậy ... còn ai không thích thì tùy chỉnh viết thật nhiều Sub vào cho màu mè :p


Mã:
Rem ==========
Rem References VBAProject ....VBTaskPane.ocx
Dim CTP As New VBTaskPane.cTaskPane
Dim CP As Object
Dim ufmExample As UserForm3
Rem ==========
Public Sub ShowHideTaskPane(ByVal UserForm As Object, ByVal ShowHide As Boolean)
    On Error Resume Next
    Rem Xu ly loi khi chua Show ma Hide truoc Or bam linh tinh
    Rem ==========
    If Not UserForm Is Nothing Then
        If ShowHide Then
            UserForm.Show vbModeless
            Set CP = CTP.Add("My Caption User Form VBA")                ''Add Caption
            Rem ========== Tuy chinh TaskPane
            CP.DockPosition = msoBarLeft                                ''ben trai
            Rem CP.DockPosition = msoBarRight                           ''ben phai
            Rem CP.DockPosition = msoCTPDockPositionRight               ''Taskpane ben phai
            Rem CP.DockPosition = msoCTPDockPositionLeft                ''Taskpane ben Trai
            Rem ==========
            Rem CP.Height = 1000        ''thay doi tham so cuoi 1000 = ??
            CP.Width = 250              ''thay doi tham so cuoi 250  = ??
            Rem ==========
            CP.DockPositionRestrict = msoCTPDockPositionRestrictNoChange    ''Khong cho di chuyen thay doi keo Tha
            Rem ==========
            CP.Visible = True
        Else
            CP.Visible = False
        End If
     End If
End Sub
Rem ==========
Sub ShowHideTaskPane_Show()
    Set ufmExample = New UserForm3
    Call ShowHideTaskPane(ufmExample, True)
End Sub
Rem ==========
Sub ShowHideTaskPane_Hide()
    Set ufmExample = New UserForm3
    Call ShowHideTaskPane(ufmExample, False)
End Sub
Rem ==========

9/ Dự án chuẩn đã chuyển vào kho lưu trữ trên github.com để chia sẽ cho Cộng đồng quốc tế ai thích thì dùng
Link sau

File Úp phía dưới và trên kho lưu trữ github.com là như nhau ai thích tải cái nào cũng thế
************************************************************************

Là Bản Demos cho Free và không giới hạn sử dụng

Như thường lệ là đọc kỹ hướng dẫn sử dụng trước khi dùng

1/ Bạn phải có quyền Admin trên PC đó

2/ Tùy theo ai đó sử dụng Office 32 bit thì dùng file VBTaskPane32.ocx còn 64 thì dùng File VBTaskPane64.ocx

3/ dê chuột vào file *.ocx xong kéo File *.ocx thả vào file *.VBS xong chọn Yes

4/ Nếu sau khi đăng ký mà thay đổi Folder lưu file *.ocx thì thực hiện lại

5/ Hổ trợ Sử dụng cho Ms Office : Excel - Word - Access - PowerPoint - Outlook
 

File đính kèm

  • VBTaskPane.rar
    1.3 MB · Đọc: 23
Lần chỉnh sửa cuối:

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,044
Được thích
3,759
Giới tính
Nam
Các tham số tùy chỉnh TaskPane có cái dùng cho Excel thì chạy tốt qua Access thì báo lỗi ... Vì vậy đề nghị ai đó sử dụng tìm tài liệu xem tham số cho nó chi tiết như thế nào thay vào thôi

VD code sau tôi thử vài tham số sử dụng tốt

Mã:
Public Sub ShowHideTaskPane(ByVal UserForm As Object, ByVal ShowHide As Boolean)
    On Error Resume Next
    Rem Xu ly loi khi chua Show ma Hide truoc Or bam linh tinh
    Rem ==========
    If Not UserForm Is Nothing Then
        If ShowHide Then
            UserForm.Show vbModeless
            Set CP = CTP.Add("My Caption User Form VBA")                ''Add Caption
            Rem ========== Tuy chinh TaskPane
            CP.DockPosition = msoBarLeft                                ''ben trai
            Rem CP.DockPosition = msoBarRight                           ''ben phai
            Rem CP.DockPosition = msoCTPDockPositionRight               ''Taskpane ben phai
            Rem CP.DockPosition = msoCTPDockPositionLeft                ''Taskpane ben Trai
            Rem ==========
            Rem CP.Height = 1000        ''thay doi tham so cuoi 1000 = ??
            CP.Width = 250              ''thay doi tham so cuoi 250  = ??
            Rem ==========
            CP.DockPositionRestrict = msoCTPDockPositionRestrictNoChange    ''Khong cho di chuyen thay doi keo Tha
            Rem ==========
            CP.Visible = True
        Else
            CP.Visible = False
        End If
     End If
End Sub


Mới úp lại File bài số 1 Fix lại chút Resize TaskPane

Nếu ai đó thiết kế Form VBA thì viết thêm code Resize Control trên Form theo TaskPane vào nữa

Cơ bản tạm ổn ... qua tết Rảnh tôi xem xét viết thêm cái hàm tùy chọn nhúng Zalo +++ ... là hết trò chơi ta lại chuyển trò khác chơi vậy :D:p

Thay vì chơi Game = Vô tích sự ==> Thì ta chơi Code thôi xong cho Free làm từ thiện cho các học trò nghèo khó khăn chi phí mua dùng và cho Cộng đồng yêu thích nó
 
Lần chỉnh sửa cuối:

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,044
Được thích
3,759
Giới tính
Nam
Năm cũ sắp qua ... và năm mới đang trở lại

Tôi mượn cái Lịch của HTN một chút vì Tôi thích các gam màu trên đó trẻ trung và năng động như một cành đào ngũ sắc đang chào đón mùa Xuân

để trưng bày tô thắm thêm cái vẽ đẹp và tiện ích vốn có trong không khí mùa xuân đang trở lại ...


1674191091480.png

Mùa xuân đang trở lại .... Chúc Năm Mới Hạnh phúc đến với mọi nhà
 

File đính kèm

  • CALENDAR.rar
    376.1 KB · Đọc: 24
Lần chỉnh sửa cuối:

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,044
Được thích
3,759
Giới tính
Nam
Chủ đề này chỉ hổ trợ những phát sinh có liên quan ... Ngoài phạm vi đó ai có mong muốn gì vui lòng lặp thớt mới hỏi
Nếu Tôi biết sẽ trợ giúp trong chừng mực có thể ...

Ứng dụng đã hoàn thiện và trưng bày 3

 

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,044
Được thích
3,759
Giới tính
Nam
How to write VBE with Delphi
1/ Cơ bản thì nó là như thế khi bạn viết trên bất cứ ngôn ngữ lập trình nào sử dụng các thư viện của Ms thì nó là như nhau chỉ khác nhau cách khai báo và sử dụng nó

2/ để viết được TaskPane thì VB6 cũng viết tốt có điều nó đã bị bỏ từ lâu còn Tôi vẫn sử dụng nó vì nhiều lý do

3/ Từ những cái cơ bản đó bạn hãy thử viết nó trên Delphi xem tình hình sao !?

4/ Ngày hôm qua Tôi mới thử hỏi ChatGPT xem sao thì hình như nó toàn gợi ý viết trên Delphi7 và nhiều thứ lộn xộn và không sử dụng được

điều đó chứng minh 1 điều tới thời điểm hiện tại nó chưa biết

5/ Tài liệu TaskPane tràn ngập Google và chỉ dẫn của Ms ... Bạn hãy thử sức mình xem sao

6/ để viết được TaskPane trên Delphi .... Tìm tài liệu Google sẽ không có và những người tự viết được nó rất ít

7/ Hầu hết là sử dụng AddIns Add-in Express™ để viết TaskPane

Hãy nỗ lực và cố giắng ... Những điều tốt đẹp sẽ đến với Bạn

Chúc may mắn
 
Lần chỉnh sửa cuối:

MyExceladdin

Thành viên mới
Tham gia
24/4/22
Bài viết
14
Được thích
-1
I succeeded
delphi office vbe toolwindow
 

File đính kèm

  • 1676958819652.png
    1676958819652.png
    6.4 KB · Đọc: 22

Kiều Mạnh

I don't program, I beat code into submission!!!
Tham gia
9/6/12
Bài viết
5,044
Được thích
3,759
Giới tính
Nam
I succeeded
delphi office vbe toolwindow
Thế lâu nay Bạn viết hoàn thiện chưa ... Úp file lên đây Tôi dùng thử xem sao

Khả năng test code và dùng thử của Tôi rất tốt đấy nếu phát sinh lỗi gì Tôi báo lại cho mà điều chỉnh lại code

Nếu chưa Viết xong thì nhờ ChatGPT hổ trợ xem tình hình sao.. lâu lâu tôi vẫn hỏi nó liên quan tới Cái Taskpane trên Delphi

nhưng tới giờ nó vẫn chưa biết viết nếu khi nào nó biết viết thì tôi sẽ cho Free mã nguồn code của Tôi úp lên đây xem như 1 cách tham khảo thêm vậy

Nguyên lý của nó theo chuẩn chung của Ms đặt ra chỉ khác nhau Tools lập trình và cách khai báo trên Tools đó như thế nào thôi

hãy cố giắng bằng chính khả năng của Mình thử xem sao ... khoãng 10 dòng code trên Delphi thôi

Chúc May Mắn
 

MyExceladdin

Thành viên mới
Tham gia
24/4/22
Bài viết
14
Được thích
-1
1678081255746.pngI have implemented Excel Taskpan with delphi form, but it has not achieved my expected effect. There are many bugs. I have no time to learn Window Api.
 
Web KT

Group

DIỄN ĐÀN GIẢI PHÁP EXCEL
Top Bottom