BLUESOFTS mở lớp LẬP TRÌNH VBA TRONG EXCEL NÂNG CAO LEVEL 1 tại Hà Nội và ONLINE 18/9

Liên hệ QC

Nguyễn Duy Tuân

Nghị Hách
Thành viên danh dự
Tham gia
13/6/06
Bài viết
4,649
Được thích
10,138
Giới tính
Nam
Nghề nghiệp
Giáo viên, CEO tại Bluesofts


Khóa học "Lập trình VBA trong Excel Nâng Cao LEVEL1" gồm 10 chuyên đề, các kiến thức gồm: tối ưu code, tăng tốc độ ứng dụng, truy xuất CSDL với ADO và SQL, hợp nhất dữ liệu từ nhiều file excel, XML trong VBA, lập trình menu Ribbon, lập trình sự kiện workbook, worksheet, thiết kế userform chuyên nghiệp cùng ActiveX Controls (TreeView, ListView,...),....

+ Tên lớp học “Lập trình VBA trong Excel nâng cao LEVEL1”
+ Khai giảng 17h30, ngày 18/09/2016
+ Giảng viên: Th.S Nguyễn Duy Tuân – ĐT: 0904210337 – Mail: duytuan@bluesofts.net
+ Thời gian học: 10 buổi, thời gian mỗi buổi học 150 phút. Tuần học 2-3 buổi
+ Phòng học tại phòng đào tạo Công ty Cổ phần BLUESOFTS
+ Địa chỉ Phòng 1012 CT1A-DN2 Đường Hàm Nghi, KĐT Mỹ Đình 2, Từ Liêm, Hà Nội
+ Học phí 2.5 triệu đồng (bao gồm tài liệu hỗ trợ học) .
+ Học viên được phép theo học các khóa sau miễn phí nếu vắng mặt một số chuyên đề của khóa đã đăng ký hoặc chưa nắm bắt rõ ràng.

NỘI DUNG KHÓA HỌC LẬP TRÌNH VBA TRONG EXCEL NÂNG CAO LEVEL1
Chuyên đề 1: Khai thác chuyên sâu đối tượng RANGE, kiến trúc của biến VARIANT, xử lý tất cả tình huống hoạt động của RANGE trong bảng tính.
Chuyên đề 2: Kỹ thuật làm Form trên Worksheet. Lập trình giao diện nhập liệu (như hóa đơn) và đẩy dữ liệu vào CSDL.
Chuyên đề 3: Giải pháp tối ưu tốc độ đọc và xử lý dữ liệu trong bảng tính. Kỹ thuật xử lý mảng tĩnh, mảng động.
Chuyên đề 4: Phương pháp tách, gộp dữ liệu từ nhiều tập tin Excel. Kỹ thuật hợp nhất dữ liệu, làm báo cáo chuyên nghiệp trong Excel.
Chuyên đề 5: Kỹ thuật lập trình CSDL với đối tượng ADO. Phương pháp truy vấn, làm báo cáo bằng ngôn ngữ T-SQL.
Chuyên đề 6: Kỹ thuật lập trình với tập tin XML.
Chuyên đề 7: Kỹ thuật viết hàm, thủ tục theo phương pháp đệ quy. Viết hàm đa năng, hàm mảng.
Chuyên đề 8: Kỹ thuật lập trình các sự kiện liên quan đến Application, Workbook, Worksheet.
Chuyên đề 9: Lập trình Userform chuyên nghiệp. Ứng dụng kỹ thuật lập trình API để cải tiến giao diện Userform. Ứng dụng ActiveX Controls chuẩn của Microsoft: TreeView, ListView, ComboImage,… để tạo các điều khiển đa dạng, đẹp và có khả năng tương tác tốt với người dùng.
Chuyên đề 10: Kỹ thuật lập trình với menu Ribbon với đầy đủ thành phần giao diện của menu, lập trình các sự kiện theo menu.
***​
ĐĂNG KÝ và Xem chi tiết chương trình

demo.png


[video=youtube;lSyoR1XFte8]https://www.youtube.com/watch?v=lSyoR1XFte8[/video]​
 
Lần chỉnh sửa cuối:
[FONT=&amp]
[/FONT]

[FONT=&amp]Trong lập trình VBA, để hiển thị thông báo ta dùng hàm MsgBox, tuy nhiên hàm này không thể hiển thị chữ tiếng Việt có dấu -unicode. Bài viết này tôi xin hướng dẫn cách tạo ra một hàm MsgBox có khả năng hiển thị chữ tiếng Việt có dấu, unicode.
[/FONT]

[FONT=&amp]
image001.jpg

​[/FONT]
[FONT=&amp]Trong môi trường VBA, tạo một module mới, copy đoạn code dưới đây:

[/FONT]
[GPECODE=vb]'****************************************
'Tac gia: Nguyen Duy Tuan
'Tel : 0904.210.337
'E.Mail :
tuanktcdcn@ yahoo.com
'Website: www.bluesofts.net
'****************************************
'Khai bao cac ham API trong thu vien User32.DLL. Chay trong môi tru?ng Office 32 ho?c 64-bit
#If VBA7 Then
Private Declare PtrSafe Function GetActiveWindow Lib "user32" () As LongPtr
Private Declare PtrSafe Function MessageBoxW Lib "user32" (ByVal hwnd As LongPtr, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
#Else
Private Declare Function GetActiveWindow Lib "user32" () As Long
Private Declare Function MessageBoxW Lib "user32" (ByVal hwnd As Long, ByVal lpText As String, ByVal lpCaption As String, ByVal wType As Long) As Long
#End If

Function MsgBoxUni(ByVal PromptUni As Variant, Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, Optional ByVal TitleUni As Variant = vbNullString) As VbMsgBoxResult
'Function MsgBoxUni(ByVal PromptUni As Variant, Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, Optional ByVal TitleUni As Variant, Optional HelpFile, Optional Context) As VbMsgBoxResult
'BStrMsg,BStrTitle : La chuoi Unicode
Dim BStrMsg, BStrTitle
'Hàm StrConv Chuyen chuoi ve ma Unicode
BStrMsg = StrConv(PromptUni, vbUnicode)
BStrTitle = StrConv(TitleUni, vbUnicode)
MsgBoxUni = MessageBoxW(GetActiveWindow, BStrMsg, BStrTitle, Buttons)
End Function
[/GPECODE]
[FONT=&amp]Như vậy từ nay các bạn có thể sử dụng hàm MsgBoxUni thay thế hàm MsgBox trong VBA là có thể hiển thị chữ tiếng Việt có dấu - unicode.

[/FONT]
[gpecode=vb]Sub TestMsgBoxUni()
'Test trong Excel
MsgBoxUni Range("B3").Value, vbInformation, Range("B4").Value
End Sub
[/gpecode]
[FONT=&amp]Theo ví dụ trên, ô B3 chưa nội dung thông báo, B4 nội dung tiêu đề bảng thông báo, tất cả là chữ unicode.[/FONT]
[FONT=&amp]Download ví dụ:[/FONT]
http://www.bluesofts.net/Baiviet/Laptrinh/VB_VBA/MsgBoxUnicode.zip
[FONT=&amp]Để tìm hiểu thêm nhiều kiến thức bổ ích tại khóa học lập trình VBA trong Excel nâng cao LV1 của công ty.[/FONT]
[FONT=&amp]Đăng ký học: [/FONT][FONT=&amp]http://bluesofts.net/daotaothuchanh/dao-tao-vba-trong-excel-nang-cao.html[/FONT]
 
BSAC - Bluesofts ActiveX Controls

BSAC - Bluesofts ActiveX Controls - Bộ controls lập trình cho Excel và Office chuyên nghiệp mà các bạn sẽ được học trong khóa học Lập trình VBA trong Excel nâng cao Level 1.


DemoBSACCtrls.jpg

(Hình trên được lập trình trong Excel VBA với các controls của BSAC)

BSAC version 1.1.2.0 (03/03/2015)
BSAC là bộ ActiveX Controls hỗ trợ tốt nhất cho VBA trong Excel và Office nói chung, các ngôn ngữ lập trình khác cũng được hỗ trợ như VB6, VFP, Delphi. BSAC hỗ trợ hoàn toàn unicode, cung cấp tương đối đầy đủ các điều khiển cho thiết kế giao diện người dùng, như là: BSLabel, BSEdit, BSCheckBox, BSComboBox, BSListBox, BSListView, BSTreeView, Progress,... Đặc biệt hỗ trợ đối tượng BSTaskPaneX, cho phép làm việc với Task Pane của Office trong VBA, VB6 một cách linh hoạt.
Một khả năng tuyệt vời là BSAC cho phép người dùng can thiệp sâu vào đối tượng, cho phép vẽ thêm hay thay đổi giao diện bởi việc cung cấp các thủ tục sự kiện quan trọng như: OnMeasureItem, OnDrawItem, OnWndProc.
Với BSAC, người lập trình có thể tự tạo riêng cho mình các điều khiển có giao diện đẹp rất dễ dàng với vài dòng code.

Giải pháp gắn Form/Userform lên Toolbar và Task Pane của Office

BSTaskPane1.1.JPG



BSListView.jpg


Ngoài các ActiveX Controls, BSAC cung cấp nhiều hàm xử lý dữ liệu, giao diện người dùng, bạn có thể tham khảo file BSAC_API.xls hoặc BSAC_API.bas trong thư mục được cài đặt.


MsgBoxTimer.jpg


(MsgBox hiển thị unicode, có timer, progress)


InputBoxPass.jpg


(InputBox hiển thị unicode, có timer)
DOWNLOAD
 
Lần chỉnh sửa cuối:
CHIA SẺ VIDEO Kỹ thuật lập trình VBA trong Excel - Phương pháp DEBUG của thầy Nguyễn Duy Tuân

Trong qua trình viết code bạn cần biết giá trị các biến ở từng dòng lệnh đang nhận giá trị nào? Có đúng theo mục đích bạn lập trình không? Để làm việc đó chúng ta cần thiết phải biết debug....


[video=youtube;8y7n1-V1NKk]https://www.youtube.com/watch?v=8y7n1-V1NKk[/video]​
 
[FONT=&amp][/FONT]
[FONT=&amp]A-Tools cung cấp giao diện người dùng để kết nối và soạn thảo tệp Excel qua mạng. A-Tools cung cấp đối tượng lập trình để bạn có thể tự thiết kế một giao diện nhập liệu khác và truy xuất dữ liệu Excel qua mạng bằng dòng lệnh, cài đoạn code vào ứng dụng Excel của bạn để nó có thể chạy được qua mạng. Bài viết dưới đây tôi trình bày với các bạn phương pháp lập trình VBA với A-Tools để kết nối và soạn thảo tệp Excel qua mạng.[/FONT]
[FONT=&amp]
1.gif
​[/FONT]
[FONT=&amp]Nhúng file thư viện “addinatools.dll” vào file Excel của bạn[/FONT]
[FONT=&amp]Mở file Excel. Nhấn ALT+F11 để vào môi trường lập trình VBE (Visual Basic Editor). Vào menu A-Tools->References…, khi hiện ra hộp thoại bạn hãy chọn mục Add-In A-Tools, nếu không thấy hãy chọn nút “Browse…” và chọn file ở đường dẫn “C:\Windows\System32\addinatools.dll”. Kết quả bạn thực hiện được như hình dưới đây:[/FONT]

[FONT=&amp]
2.jpg


[/FONT]
[FONT=&amp]Để xem đầy đủ thông tin về bài viết tại đây: [/FONT][FONT=&amp]http://bluesofts.net/cac-bai-hoc-ha...-ket-noi-va-soan-thao-tep-excel-qua-mang.html[/FONT]
 
Lần chỉnh sửa cuối:
[FONT=&amp]LẬP TRÌNH VBA TẠO CỬA SỔ TASK PANE TRONG EXCEL[/FONT]
[FONT=&amp]Tôi xin chia sẽ video của thầy Nguyễn Duy Tuân giới thiệu tới các bạn một giải pháp tạo cửa sổ Task Pane/cửa sổ phụ với việc dùng BSAC.ocx. Đây là giải pháp duy nhất để tạo ra cửa sổ Task Pane trong VBA. Vận dụng loại cửa sổ này chúng ta có thể tạo ra giao diện ứng dụng Excel của mình rất chuyên nghiệp...

[/FONT]
[video=youtube;txFbk0njIWk]https://www.youtube.com/watch?v=txFbk0njIWk&feature=youtu.be[/video][FONT=&amp]
[/FONT]
[FONT=&amp]
[/FONT]
[FONT=&amp]Đăng ký học tại đây: [/FONT]http://bluesofts.net/daotaothuchanh/dao-tao-vba-trong-excel-nang-cao.html
 
Lần chỉnh sửa cuối:
Các phương pháp để đo thời gian thực thi mã lệnh trong VB/VBA

Hàm Timer có thể dùng để xác định thời gian khi mà việc kiểm soát thời gian không quá khắt khe.
Khi cần kiểm tra sự dịch chuyển thời gian mà mức thay đổi lên đến 1/1000 giây (1 millisecond - mili giây) thì cần dùng các hàm API.
Có thể liệt kê các hàm đo thời gian như sau:
Now, Time, Timer (thuộc VB/VBA)
GetTickCount
TimeGetTime
QueryPerformanceCounter, QueryPerformanceFrequency

Chúng ta sẽ cùng thực hiện một loạt các thử nghiệm dưới đây sẽ có kết luận.
Với mỗi thủ tục test dưới đây là một phương pháp đo thời gian thực hiện mã lệnh.
Trong VB/VBA, đầu Module khai báo các hàm API
Code:
[gpecode=vb]

Declare Function QueryPerformanceCounter Lib "Kernel32" _
(X As Currency) As Boolean
Declare Function QueryPerformanceFrequency Lib "Kernel32" _
(X As Currency) As Boolean
Declare Function GetTickCount Lib "Kernel32" () As Long
Declare Function timeGetTime Lib "winmm.dll" () As Long
[/gpecode]

Hàm Timer
Code:
[gpecode=vb]

Sub Test_Timer()
'
' Timer Function
Dim Loops&, T1&, T2&
Debug.Print
Loops = 0
T1 = Timer
Do
T2 = Timer
Loops = Loops + 1
Loop Until T1 <> T2
Debug.Print "Timer minimum resolution: "; _
(T2 - T1); "second(s)"
Debug.Print "Took"; Loops; "loops"
End Sub
[/gpecode]

Sau khi chạy kết quả là:
Timer minimum resolution: 1 second(s)
Took 2190162 loops


Xem đầy đủ bài hướng dẫn tại đây: http://bluesofts.net/cac-bai-hoc-ha...-thoi-gian-thuc-hien-ma-lenh-trong-vbvba.html
Còn đây là thông tin khóa đào tạo VBA nâng cao level1 do thầy Nguyễn Duy Tuân trực tiếp giảng dạy.
Link khóa học: http://bluesofts.net/daotaothuchanh/dao-tao-vba-trong-excel-nang-cao.html
 
Web KT
Back
Top Bottom