• About
  • Advertise
  • Privacy & Policy
  • Contact
NQ NEWS
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
  • Kiến thức tổng hợp
    • Development
    • Deep Learning
    • Cloud Computing
    • Kiến thức bảo mật
    • Tin học văn phòng
  • Thủ thuật
    • Phần Mềm
    • Sửa lỗi máy tính
    • Bảo mật máy tính
    • Tăng tốc máy tính
    • Thủ thuật Wifi
  • Quản trị hệ thống
    • Giải pháp bảo mật
    • Mail Server
    • Mạng LAN – WAN
    • Máy chủ
    • Windows Server 2012
  • Tin tức
No Result
View All Result
NQ NEWS
No Result
View All Result
Home Kiến thức tổng hợp Tin học văn phòng ms excel

“Đóng gói” tập tin Excel

@admiz by @admiz
07/12/2021
in ms excel
0
“Đóng Gói” Tập Tin Excel 6093e0cdb18ef.jpeg

Nhiều bạn đọc có yêu cầu “bảo mật” đối với những tập tin Excel giải quyết những bài toán của riêng mình để có thể “phân phối” chuyên nghiệp. Bài viết sẽ trình bày các bước cách thức “đóng gói” và tạo giao diện như một phần mềm bằng ngôn ngữ VB và người dùng phải cài đặt hoặc điền CD key khi mở tập tin.

1. Trong file Excel, bạn có thể viết một số đoạn code bằng ngôn ngữ VBA để xử lý dữ liệu trong file Excel hiện hành (và các file Excel khác nếu muốn). Các đoạn code VBA này sẽ truy xuất dữ liệu của file Excel thông qua mô hình hướng đối tượng.

 

Thí dụ bạn có thể dùng các đối tượng ActiveWorkbook, Workbooks(tên>) để truy xuất workbook hiện hành hay workbook với tên xác định, hay các đối tượng ActiveSheet hay Sheets(tên>) để truy xuất worksheet hiện hành hay worksheet với tên xác định. Thí dụ thủ tục CreateSheet sau đây sẽ tạo 1 worksheet mới (trong workbook hiện hành) có tên là “YourSheet“, rồi tự động nhập thông tin tọa độ của từng cell trong vùng cell từ A1 tới D10:

Sub CreateSheet()
Dim rg As Range
Dim row As Integer, col As Integer
‘tạo worksheet mới
Sheets.Add
‘đặt tên cho worksheet mới
ActiveSheet.Name = “YourSheet”
‘thiết lập vùng cell cần xử lý
Set rg = Range(“A1:D10”)
‘nhập thông tin tọa độ cho từng cell
‘duyệt theo hàng

For row = 1 To 10
‘duyệt theo cột
For col = 1 To 4
rg.Cells(row, col).Value = “(” & row & “,” & col & “)”
Next col
Next row
‘lưu kết quả lên file
ActiveWorkbook.SaveAs “c:YourWB.xls”
End Sub

 

Thật ra các đối tượng ActiveWorkbook, Workbooks, ActiveSheet hay Sheets được truy xuất trong thủ tục trên chỉ là đối tượng con của đối tượng Application, đối tượng Application miêu tả ứng dụng Excel đang chạy. Do đó nếu muốn dùng đường dẫn tuyệt đối để truy xuất các đối tượng, thủ tục CreateSheet() trên có thể được viết lại như sau:

Sub CreateSheet()
Dim rg As Range
Dim row As Integer, col As Integer
‘tạo worksheet mới
Application.Sheets.Add
‘đặt tên cho worksheet mới
Application.ActiveSheet.Name = “YourSheet”
‘thiết lập vùng cell cần xử lý
Set rg = Range(“A1:D10”)
‘nhập thông tin tọa độ cho từng cell
‘duyệt theo hàng

For row = 1 To 10
‘duyệt theo cột
For col = 1 To 4
rg.Cells(row, col).Value = “(” & row & “,” & col & “)”
Next col
Next row
‘lưu kết quả lên file
Application.ActiveWorkbook.SaveAs “c:YourWB.xls”
End Sub

Bây giờ nếu muốn chuyển các đoạn code VBA đã chạy tốt trong file Excel thành ứng dụng VB 6.0 độc lập, bạn cần thực hiện một số công việc sau:

 

– Sử dụng thư viện “Microsoft Excel x.0 Object Library” chứa các đối tượng Excel.Application, ActiveWorkbook, Workbooks, ActiveSheet, Sheets… trong Project quản lý ứng dụng VB 6.0 của bạn.

– Viết code khởi tạo đối tượng Excel.Application miêu tả ứng dụng Excel, trước khi sử dụng đối tượng này để truy xuất các đối tượng con của nó.

– Copy đoạn code VBA dùng các đối tượng bằng đường dẫn tuyệt đối đã chạy tốt vào đây.

– Sau khi xử lý dữ liệu của file Excel, viết code đóng đối tượng Excel.Application lại.

2. Muốn bảo vệ phần mềm bởi người dùng bất hợp pháp, bạn có thể viết thêm đoạn code kiểm tra password, chèn đoạn code này vào đầu phần mềm.

Để thấy rõ cách giải quyết các vấn đề vừa trình bày, chúng tôi xin giới thiệu qui trình điển hình để xây dựng 1 ứng dụng VB 6.0, nó sẽ yêu cầu người dùng nhập password, kiểm tra password nhập với password hợp pháp được lưu trong ứng dụng (hay trên file dữ liệu), nếu không đúng thì ứng dụng sẽ dừng, còn nếu đúng chương trình sẽ chạy tiếp. Chương trình gồm 1 form chính chứa 1 button Create, khi người dùng click chuột button này, ứng dụng sẽ chạy Excel, tạo 1 sheet mới có tên là “YourSheet“, nhập tọa độ vào từng cell trong vùng cell từ A1 tới D10, lưu kết quả lên file “c:YourWB.xls“:

 

1. Chạy VB 6.0, khi cửa sổ New project hiển thị, chọn icon Standard EXE rồi button Open để tạo mới Project chứa Form đơn giản.

2. Chọn menu Project.Components để hiển thị cửa sổ Components, duyệt tìm và chọn thư viện có tên là Microsoft Excel x.0 Object Library rồi OK để thêm các đối tượng trong thư viện này vào ToolBox của Project hiện hành.

3. Vẽ 1 button vào form, thíết lập lại thuộc tính (Name)=btnCreate, thuộc tính Caption=”Create”.

4. Ấn kép chuột vào button vừa tạo để tạo thủ tục xử lý sự kiện click chuột vào button rồi viết code cho thủ tục này như sau:

Option Explicit
‘khai báo hàm API cần dùng
Private Declare Sub ExitProcess Lib “kernel32” (ByVal uExitCode As Long)
‘định nghĩa hằng miêu tả password đã mật mã
Const ENPASS = “zpvsqbtt”
‘hàm mật mã chuỗi password đơn giản
Function Encryph(pass As String) As String
Dim bytes() As Byte
Dim str As String
Dim i As Integer
bytes = StrConv(pass, vbFromUnicode)
str = “”
For i = 0 To UBound(bytes)
str = str & Chr(bytes(i) + 1)
Next i
Encryph = str
End Function

‘thủ tục khởi tạo form
Private Sub Form_Load()
Dim pass As String
‘hiển thị form nhập password
frmPassword.Show vbModal
pass = frmPassword.txtPassword
Unload frmPassword
‘kiểm tra password nhập
If ENPASS Encryph(pass) Then
‘nếu sai thì dừng ứng dụng
ExitProcess (1)
End If
‘nếu đúng thì chạy tiếp bình thường
End Sub

‘thủ tục phục vụ click button Create
Private Sub btnCreate_Click()
‘định nghĩa các biến cần dùng
Dim Application As Excel.Application
Dim WorkBook As Excel.WorkBook
Dim wksSheet As Excel.Worksheet
Dim rg As Range
Dim row As Integer, col As Integer
‘tạo ứng dụng Excel
Set Application = New Excel.Application
‘tạo workbook Excel
Set WorkBook = Application.Workbooks.Add

 

‘đoạn code VBA đã có sẵn từ file Excel
‘tạo worksheet mới

Application.Sheets.Add
‘đặt tên cho worksheet mới
Application.ActiveSheet.Name = “YourSheet”
‘thiết lập vùng cell cần xử lý
Set rg = Range(“A1:D10”)
‘nhập thông tin tọa độ cho từng cell
‘duyệt theo hàng
For row = 1 To 10
‘duyệt theo cột
For col = 1 To 4
rg.Cells(row, col).Value = “(” & row & “,” & col & “)”
Next col
Next row
‘lưu kết quả lên file
Application.ActiveWorkbook.SaveAs “c:YourWB.xls”

‘dừng ứng dụng Excel
Application.Quit
Set Application = Nothing
End Sub

5. Dời chuột về cửa sổ Project (thường nằm ở phía trên phải của màn hình), ấn phải chuột vào mục Project (phần tử gốc của cây Project) để hiển thị menu chức năng. Chọn mục Add.Form để hiển thị cửa sổ tạo form, chọn icon Form rồi button Open để tạo 1 form trống mới. Thiết lập lại thuộc tính Caption=”Nhập password sử dụng”, thuộc tính (Name)=frmPassword.

6. Vẽ 1 label, 1 textbox nhập password và 1 button OK vào form như hình vẽ:

Thiết lập thuộc tính (Name) cho TextBox là txtPassword, thuộc tính (Name) cho button là btnOK. Ấn kép chuột vào button OK để tạo thủ tục xử lý sự kiện click chuột trên button này rồi viết code cho thủ tục như sau :

Private Sub btnOk_Click()
Me.Visible = False
End Sub

7. Chọn menu File.Save Project As… để lưu Project lên đĩa.

8. Chọn menu Run.Start để chạy thử ứng dụng.

9. Khi ứng dụng chạy, form yêu cầu nhập password sẽ hiển thị, nếu người dùng nhập sai password qui định bởi ứng dụng, ứng dụng sẽ dừng. Nếu người dùng nhập đúng password thì form chính của ứng dụng sẽ hiển thị, lúc này nếu người dùng ấn vào button Create thì đoạn code tạo đối tượng Excel và xử lý dữ liệu sẽ chạy.

  • Cách in bảng tính Excel trong một trang
Post Views: 112
Previous Post

Mẹo thao tác trên Excel 2007 và 2010

Next Post

Cách tạo và sử dụng bảng 3 chiều (3-D) trong Excel 2010

Related Posts

Cách định Dạng Ngày Tháng Trên Excel 6093d95944e43.jpeg
ms excel

Cách định dạng ngày tháng trên Excel

30/04/2022
Tổng Hợp Các Hàm Số Lượng Giác Trong Excel 6093d945e72fa.jpeg
ms excel

Tổng hợp các hàm số lượng giác trong Excel

30/04/2022
Cách Sắp Xếp Tên Theo Thứ Tự Chữ Cái Trong Excel 6093d96262167.jpeg
ms excel

Cách sắp xếp tên theo thứ tự chữ cái trong Excel

30/04/2022
Cách Tạo Bảng Excel, Chèn Bảng Trong Excel 6093d9760b0ed.jpeg
ms excel

Cách tạo bảng Excel, chèn bảng trong Excel

30/04/2022
Tra Cứu Dữ Liệu Trong Bảng Excel: Thay Thế Vlookup Bằng Index Và Match 6093d986a4a62.jpeg
ms excel

Tra cứu dữ liệu trong bảng Excel: Thay thế VLOOKUP bằng INDEX và MATCH

30/04/2022
Cách Tạo Danh Sách Sổ Xuống (drop List) Trên Excel 2016 6093d9a71cf56.jpeg
ms excel

Cách tạo danh sách sổ xuống (drop list) trên Excel 2016

28/04/2022
Next Post
Cách Tạo Và Sử Dụng Bảng 3 Chiều (3 D) Trong Excel 2010 6093e0c147d04.jpeg

Cách tạo và sử dụng bảng 3 chiều (3-D) trong Excel 2010

Bài mới nhất

Top 6 Trang Web Tạo Email Marketing Miễn Phí, ấn Tượng Nhiều Người Dùng 612d237cbf541.png

Top 6 trang web tạo Email Marketing miễn phí, ấn tượng nhiều người dùng

14/05/2025
Dns Là Gì? Chức Năng, Cách Thức Hoạt động Và Nguyên Tắc Sử Dụng Hiệu Quả 612d236260cb2.jpeg

DNS là gì? Chức năng, cách thức hoạt động và nguyên tắc sử dụng hiệu quả

13/05/2025
Cpanel Là Gì Và Hướng Dẫn Sử Dụng Cpanel Hiệu Quả Cho Người Mới 612d235c02794.png

Cpanel là gì và hướng dẫn sử dụng Cpanel hiệu quả cho người mới

13/05/2025
Website Defacement Là Gì Và Cách Khắc Phục Hiệu Quả Cho Website 612d235622440.png

Website Defacement là gì và cách khắc phục hiệu quả cho website

12/05/2025
8 Cách Quản Lý Data Khách Hàng Hiệu Quả Cho Doanh Nghiệp 612d234c2b5ad.jpeg

8 cách quản lý data khách hàng hiệu quả cho doanh nghiệp

12/05/2025

Danh mục

  • Android
  • Bảo mật máy tính
  • Bảo mật, Antivirus
  • Chuyện công nghệ
  • Deep Learning
  • Development
  • Dịch vụ công trực tuyến
  • Dịch vụ nhà mạng
  • Giải pháp bảo mật
  • Hệ thống
  • Hệ thống
  • iPhone
  • Kiến thức bảo mật
  • Kiến thức cơ bản phổ thông
  • Kiến thức Marketing căn bản
  • Kiến thức tổng hợp
  • Lập trình
  • Linux
  • Linux OS
  • macOS
  • Mail Server
  • Mạng LAN – WAN
  • Máy ảo
  • Máy chủ
  • ms excel
  • ms-powerpoint
  • Nền tảng điện toán đám mây
  • Phần cứng
  • Phần Mềm
  • Quản trị hệ thống
  • Raspberry Pi
  • Sửa lỗi máy tính
  • Tăng tốc máy tính
  • Thủ thuật
  • Thủ thuật SEO
  • Thủ thuật Wifi
  • Tiện ích hệ thống
  • Tin học văn phòng
  • Tin tức
  • Uncategorized
  • Ứng dụng
  • Website
  • Windows Server 2012

Thẻ

#app #chatbot #chatbot tự động #CRM #Kiến thức cơ bản #Techblog #Thiết kế website Android apple CPU Email Marketing Google Google Drive hacker HTML hàm python hàm python có sẵn hình nền hình nền máy tính học css học python học SQL ios iphone iphone 12 iPhone X macos Microsoft mssql MS SQL Server ngôn ngữ lập trình python Raspberry Pi Samsung smartphone SQL SQL Server tham số trong C thủ thuật windows 10 tài liệu python windows windows 10 YouTube điện thoại thông minh ứng dụng
  • About
  • Advertise
  • Privacy & Policy
  • Contact

© 2022 Pha Le Solution

No Result
View All Result
  • Home

© 2022 Pha Le Solution