Bài 4. Biến Trong VBA | Giải Pháp Excel

Giải Pháp Excel
  • Trang chủ Có gì mới Hoạt động gần nhất Tác giả
  • Diễn đàn Tìm bài viết mới Tìm theo chuyên mục
  • Video New Video về Excel Video về tin học khác Tin tức về tin học chung
  • Thông tin mới Featured content Tìm bài mới Tài Nguyên Mới Hoạt động gần nhất
  • Tài nguyên Đánh giá mới nhất Tìm tài nguyên
  • Facebook
  • Đóng góp
Đăng nhập Đăng Ký Có gì mới? Tìm kiếm

Tìm kiếm

Mọi nơi Đề tài Diễn đàn này Đề tài này Chỉ tìm trong tiêu đề Note Bởi: Tìm kiếm Tìm nâng cao…
  • Tìm bài viết mới
  • Tìm theo chuyên mục
Menu Đăng nhập Đăng Ký Install the app Install How to install the app on iOS

Follow along with the video below to see how to install our site as a web app on your home screen.

Note: This feature may not be available in some browsers.

  • Khách ơi! GPE thông tin đến bạn ấn phẩm "lập trình VBA trong Excel": - Phần cơ bản - Phần Nâng Cao - VBA trong Excel - Cải thiện và tăng tốc
  • Trang chủ
  • Diễn đàn
  • Lập Trình với Excel
You are using an out of date browser. It may not display this or other websites correctly.You should upgrade or use an alternative browser. Bài 4. Biến trong VBA (2 người xem)
  • Thread starter Thread starter befaint
  • Ngày gửi Ngày gửi 23/10/17
Liên hệ QC

Người dùng đang xem chủ đề này

Đang trực tuyến: 3 (Thành viên: 0, Khách: 3) befaint

befaint

|||||||||||||
Tham gia 6/1/11 Bài viết 14,600 Được thích 19,843 Bài 4. Biến trong VBA (Danh sách các bài viết về VBA xem ở đây Index - Các bài viết về VBA) 1. Các kiểu dữ liệu (Tham khảo) Data type.png 2. Khai báo biến và đặt tên biến trong VBA - Mỗi chương trình ứng dụng thường xử lý nhiều dữ liệu, ta dùng khái niệm "biến" để lưu trữ dữ liệu trong bộ nhớ máy tính, mỗi biến lưu trữ một dữ liệu của chương trình. - Mặc dù VBA không yêu cầu (*), nhưng ta nên định nghĩa rõ ràng từng biến trước khi truy xuất nó để code của chương trình được rõ ràng, dễ hiểu, dễ bảo trì và phát triển. - Định nghĩa 1 biến là : • Định nghĩa tên nhận dạng cho biến, • Kết hợp kiểu với biến để xác định cấu trúc dữ liệu của biến, • Định nghĩa tầm vực (phạm vi) truy xuất biến. - Cú pháp định nghĩa biến: PHP: Sao chép. [Static|Public|Private|Dim] AVariable [As Type] + Static, Public, Private, Dim (**): Các từ khóa để khai báo một biến. + AVariable: Tên biến cần khai báo. Tại từng thời điểm, biến chứa một giá trị (nội dung) cụ thể. Theo thời gian nội dung của biến sẽ bị thay đổi theo tính chất xử lý của code. Cách đặt tên cho một biến : • Tên biến có độ dài tối đa 255 ký tự • Ký tự đầu tiên phải là một ký tự chữ (letter), không phải ký tự số (0-9) • Các ký tự tiếp theo có thể là các ký tự chữ (letter), ký số (digit), dấu gạch dưới • Tên biến không được chứa các ký tự đặc biệt như các ký tự : ^, &, ), (,%, $, #, @, !, ~, +, -, *, … • VBA không phân biệt chữ HOA hay chữ thường trong tên biến. Ví dụ: Tên biến hợp lệ: PHP: Sao chép. Bien1_dong KhoiLuong Tên biến không hợp lệ: PHP: Sao chép. Bien-1: ''Vì có dấu gạch ngang Bien&1: ''Vì có ký tự & 1Bien_dong: ''Vì có ký tự số ở đầu Các lưu ý khi đặt tên biến: - Nên chọn tên biến ngắn gọn nhưng thể hiện rõ ý nghĩa. Ví dụ: Ta muốn có một biến để lưu mã khác hàng thì có thể đặt: MaKH - Khi viết tên biến ta nên viết hoa chữ đầu tiên của một từ có ý nghĩa. Ví dụ: Đặt tên biến xác định khối lượng, số tiền: Kluong, SoTien - Không được dùng tên biến trùng với các từ khoá như: Print, Sub, End… (từ khóa là những từ mà ngôn ngữ VBA đã dùng cho những thành phần xác định của ngôn ngữ). + As: Từ khóa để gán với kiểu dữ liệu nào cho biến. + Type: Kiểu dữ liệu cần gán cho biến đang khai báo. Nếu bỏ qua [As Type] thì biến đó mặc định nhận kiểu dữ liệu Variant. Chú thích (*): Có hay không bắt buộc khai báo biến trong VBA - Khi ở trên cùng trong các môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm) có dòng Option Explicit thì các biến phải được khai báo trước khi sử dụng. - Hai cách thiết lập Option Explicit: Một là nhập trực tiếp ở trên cùng của môi trường viết code. Hai là thiết lập Options trong VBA, yêu cầu khai báo biến (mục Require Variable Declaration được chọn) thì ở trên cùng trong các môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm) sẽ tự động thêm dòng Option Explicit. upload_2017-10-23_15-22-49.pngupload_2017-10-23_15-22-53.png Chú thích (**): Giải thích các từ khóa đứng trước tên biến trong cú pháp khai báo biến PHP: Sao chép. [Static|Public|Private|Dim] AVariable [As Type] Public, Private, Static là các từ khoá dùng để xác định phạm vi (tầm vực) của một vật thể (variable, sub, hoặc function). (Tham khảo bài #10) Phạm vi/ tầm vực có hai tính chất: tính chất "có thể thấy được" và tính chất "tồn tại". - Tồn tại: chỉ áp dụng cho biến (variable), không tồn tại có nghĩa là chưa được thiết lập, hoặc đã bị huỷ. - Có thể thấy được: áp dụng cho mọi loại (variable, sub, hoặc function). Tùy theo cách khai báo mà vật thể có thể thấy được trong một phạm vi này nhưng lại bị che khuất trong phạm vi khác. Lưu ý là vật thể có thể vẫn tồn tại, chỉ ở ngoài phạm vi thì không chạm được tới nó mà thôi. Ở nội dung phần này, ta chỉ xét tới variable. • Public: phạm vi toàn cục, ở đâu trong VBAProject cũng có thể thấy / dùng được. - Cấu trúc: PHP: Sao chép. Public AVariable [As Type] - Tồn tại: Biến chỉ giải phóng khi thoát file. - Vị trí: Để ngoài Sub/Function, trên cùng của môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm). - Ví dụ: Module1: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Public Var1 As Long Public Var2 As Long Sub GanGiaTri() 'Gan gia tri vao bien' 'Do khai bao toan cuc (tren cung module) nen duoc phep su dung 2 bien nay' Var1 = 10 Var2 = 20 End Sub Sub XemGiaTri() 'Chay Sub GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub Module2: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Sub XemGT() 'Chay Sub Module1.GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Hai bien Var1 va Var2 da duoc khai bao trong Module1' 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub • Private: phạm vi nội bộ khi xét cả VBAProject, nó khai báo trên cùng module thì nó là toàn cục của module đó, các code trong module đó đều thấy nó. - Cấu trúc: PHP: Sao chép. Private Avariable [As Type] - Tồn tại: Biến chỉ giải phóng khi thoát file. - Vị trí: Để ngoài Sub/Function, trên cùng của môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm). - Ví dụ: Module1: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Private Var1 As Long Private Var2 As Long Sub GanGiaTri() 'Gan gia tri vao bien' 'Do khai bao toan cuc (tren cung module) nen duoc phep su dung 2 bien nay' Var1 = 10 Var2 = 20 End Sub Sub XemGiaTri() 'Chay Sub GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub Module2: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Sub XemGT() 'Chay Sub Module1.GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Hai bien Var1 va Var2 chua duoc khai bao, xay ra loi: Variable not defined' End Sub • Dim: Khai báo biến ở phạm vi toàn cục trong môi trường được khai báo (để ở ngoài Sub/ Function, trên cùng module) nhưng là phạm vi nội bộ khi xét cả VBAProject, hoặc nội bộ trong Sub/ Function. - Cấu trúc: PHP: Sao chép. Dim AVariable [As Type] - Tồn tại: Biến giải phóng khi thoát file (phạm vi toàn cục của module), giải phóng khi thoát Sub/Function (phạm vi nội bộ của Sub/Function). - Vị trí: + Để ở ngoài Sub/ Function: Khai báo biến ở phạm vi toàn cục của môi trường khai báo. + Khai báo trong Sub/ Function: Phạm vi nội bộ của Sub/Function. • Static: Khai báo biến ở phạm vi nội bộ trong Sub/ Function - Cấu trúc: PHP: Sao chép. Static AVariable [As Type] - Tồn tại: Biến chỉ giải phóng khi thoát file. - Vị trí: Chỉ đặt trong Sub/Function. Ví dụ: PHP: Sao chép. Sub Vidu_Static() Static a As Long a = a + 10 MsgBox "a = " & a 'Chay Sub nay 3 lan: Bien a van duoc luu gia tri sau cac lan Sub duoc chay' 'Lan 1: a=10' 'Lan 1: a=20' 'Lan 1: a=30' End Sub Lưu ý: Tất cả các kiểu khai báo biến, kể cả Public hay Static đều được giải phóng khi code bị bất cứ lỗi nào làm dừng chương trình hoặc khi VBA được Reset.

File đính kèm

  • Public variable.xlsb Public variable.xlsb 13.6 KB · Đọc: 119
  • Private variable.xlsb Private variable.xlsb 14.6 KB · Đọc: 82
  • Dim variable.xlsb Dim variable.xlsb 15.1 KB · Đọc: 86
  • Static variable.xlsb Static variable.xlsb 13.7 KB · Đọc: 84
Lần chỉnh sửa cuối: 23/10/17 Sắp xếp theo thời gian sắp xếp theo bầu chọn T

tueyennhi

Thành viên tích cực
Tham gia 18/10/10 Bài viết 1,192 Được thích 105
befaint đã viết: Bài 4. Biến trong VBA (Danh sách các bài viết về VBA xem ở đây Index - Các bài viết về VBA) 1. Các kiểu dữ liệu (Tham khảo) View attachment 185348 2. Khai báo biến và đặt tên biến trong VBA - Mỗi chương trình ứng dụng thường xử lý nhiều dữ liệu, ta dùng khái niệm "biến" để lưu trữ dữ liệu trong bộ nhớ máy tính, mỗi biến lưu trữ một dữ liệu của chương trình. - Mặc dù VBA không yêu cầu (*), nhưng ta nên định nghĩa rõ ràng từng biến trước khi truy xuất nó để code của chương trình được rõ ràng, dễ hiểu, dễ bảo trì và phát triển. - Định nghĩa 1 biến là : • Định nghĩa tên nhận dạng cho biến, • Kết hợp kiểu với biến để xác định cấu trúc dữ liệu của biến, • Định nghĩa tầm vực (phạm vi) truy xuất biến. - Cú pháp định nghĩa biến: PHP: Sao chép. [Static|Public|Private|Dim] AVariable [As Type] + Static, Public, Private, Dim (**): Các từ khóa để khai báo một biến. + AVariable: Tên biến cần khai báo. Tại từng thời điểm, biến chứa một giá trị (nội dung) cụ thể. Theo thời gian nội dung của biến sẽ bị thay đổi theo tính chất xử lý của code. Cách đặt tên cho một biến : • Tên biến có độ dài tối đa 255 ký tự • Ký tự đầu tiên phải là một ký tự chữ (letter), không phải ký tự số (0-9) • Các ký tự tiếp theo có thể là các ký tự chữ (letter), ký số (digit), dấu gạch dưới • Tên biến không được chứa các ký tự đặc biệt như các ký tự : ^, &, ), (,%, $, #, @, !, ~, +, -, *, … • VBA không phân biệt chữ HOA hay chữ thường trong tên biến. Ví dụ: Tên biến hợp lệ: PHP: Sao chép. Bien1_dong KhoiLuong Tên biến không hợp lệ: PHP: Sao chép. Bien-1: ''Vì có dấu gạch ngang Bien&1: ''Vì có ký tự & 1Bien_dong: ''Vì có ký tự số ở đầu Các lưu ý khi đặt tên biến: - Nên chọn tên biến ngắn gọn nhưng thể hiện rõ ý nghĩa. Ví dụ: Ta muốn có một biến để lưu mã khác hàng thì có thể đặt: MaKH - Khi viết tên biến ta nên viết hoa chữ đầu tiên của một từ có ý nghĩa. Ví dụ: Đặt tên biến xác định khối lượng, số tiền: Kluong, SoTien - Không được dùng tên biến trùng với các từ khoá như: Print, Sub, End… (từ khóa là những từ mà ngôn ngữ VBA đã dùng cho những thành phần xác định của ngôn ngữ). + As: Từ khóa để gán với kiểu dữ liệu nào cho biến. + Type: Kiểu dữ liệu cần gán cho biến đang khai báo. Nếu bỏ qua [As Type] thì biến đó mặc định nhận kiểu dữ liệu Variant. Chú thích (*): Có hay không bắt buộc khai báo biến trong VBA - Khi ở trên cùng trong các môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm) có dòng Option Explicit thì các biến phải được khai báo trước khi sử dụng. - Hai cách thiết lập Option Explicit: Một là nhập trực tiếp ở trên cùng của môi trường viết code. Hai là thiết lập Options trong VBA, yêu cầu khai báo biến (mục Require Variable Declaration được chọn) thì ở trên cùng trong các môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm) sẽ tự động thêm dòng Option Explicit. View attachment 185350View attachment 185351 Chú thích (**): Giải thích các từ khóa đứng trước tên biến trong cú pháp khai báo biến PHP: Sao chép. [Static|Public|Private|Dim] AVariable [As Type] Public, Private, Static là các từ khoá dùng để xác định phạm vi (tầm vực) của một vật thể (variable, sub, hoặc function). (Tham khảo bài #10) Phạm vi/ tầm vực có hai tính chất: tính chất "có thể thấy được" và tính chất "tồn tại". - Tồn tại: chỉ áp dụng cho biến (variable), không tồn tại có nghĩa là chưa được thiết lập, hoặc đã bị huỷ. - Có thể thấy được: áp dụng cho mọi loại (variable, sub, hoặc function). Tùy theo cách khai báo mà vật thể có thể thấy được trong một phạm vi này nhưng lại bị che khuất trong phạm vi khác. Lưu ý là vật thể có thể vẫn tồn tại, chỉ ở ngoài phạm vi thì không chạm được tới nó mà thôi. Ở nội dung phần này, ta chỉ xét tới variable. • Public: phạm vi toàn cục, ở đâu trong VBAProject cũng có thể thấy / dùng được. - Cấu trúc: PHP: Sao chép. Public AVariable [As Type] - Tồn tại: Biến chỉ giải phóng khi thoát file. - Vị trí: Để ngoài Sub/Function, trên cùng của môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm). - Ví dụ: Module1: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Public Var1 As Long Public Var2 As Long Sub GanGiaTri() 'Gan gia tri vao bien' 'Do khai bao toan cuc (tren cung module) nen duoc phep su dung 2 bien nay' Var1 = 10 Var2 = 20 End Sub Sub XemGiaTri() 'Chay Sub GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub Module2: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Sub XemGT() 'Chay Sub Module1.GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Hai bien Var1 va Var2 da duoc khai bao trong Module1' 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub • Private: phạm vi nội bộ khi xét cả VBAProject, nó khai báo trên cùng module thì nó là toàn cục của module đó, các code trong module đó đều thấy nó. - Cấu trúc: PHP: Sao chép. Private Avariable [As Type] - Tồn tại: Biến chỉ giải phóng khi thoát file. - Vị trí: Để ngoài Sub/Function, trên cùng của môi trường VBA Project (Worksheet, Workbook, Module, Class module, UserForm). - Ví dụ: Module1: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Private Var1 As Long Private Var2 As Long Sub GanGiaTri() 'Gan gia tri vao bien' 'Do khai bao toan cuc (tren cung module) nen duoc phep su dung 2 bien nay' Var1 = 10 Var2 = 20 End Sub Sub XemGiaTri() 'Chay Sub GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub Module2: PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Sub XemGT() 'Chay Sub Module1.GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Hai bien Var1 va Var2 chua duoc khai bao, xay ra loi: Variable not defined' End Sub • Dim: Khai báo biến ở phạm vi toàn cục trong môi trường được khai báo (để ở ngoài Sub/ Function, trên cùng module) nhưng là phạm vi nội bộ khi xét cả VBAProject, hoặc nội bộ trong Sub/ Function. - Cấu trúc: PHP: Sao chép. Dim AVariable [As Type] - Tồn tại: Biến giải phóng khi thoát file (phạm vi toàn cục của module), giải phóng khi thoát Sub/Function (phạm vi nội bộ của Sub/Function). - Vị trí: + Để ở ngoài Sub/ Function: Khai báo biến ở phạm vi toàn cục của môi trường khai báo. + Khai báo trong Sub/ Function: Phạm vi nội bộ của Sub/Function. • Static: Khai báo biến ở phạm vi nội bộ trong Sub/ Function - Cấu trúc: PHP: Sao chép. Static AVariable [As Type] - Tồn tại: Biến chỉ giải phóng khi thoát file. - Vị trí: Chỉ đặt trong Sub/Function. Ví dụ: PHP: Sao chép. Sub Vidu_Static() Static a As Long a = a + 10 MsgBox "a = " & a 'Chay Sub nay 3 lan: Bien a van duoc luu gia tri sau cac lan Sub duoc chay' 'Lan 1: a=10' 'Lan 1: a=20' 'Lan 1: a=30' End Sub Lưu ý: Tất cả các kiểu khai báo biến, kể cả Public hay Static đều được giải phóng khi code bị bất cứ lỗi nào làm dừng chương trình hoặc khi VBA được Reset. Nhấp chuột vào đây để mở rộng...
Trong file Public variable khi mình chạy thì đều thấy biến Var 1 và 2 có giá trị là 0. Vậy làm thế nào để gán được vào biến một con số cụ thể để có thể dùng giá trị biến đó trong một Sub khác? Bài đã được tự động gộp: 13/11/18 Có vẻ mình hiểu qua qua được chút rồi PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Public Const Var1 = 7 / 24 Public Const Var2 = 20 Sub XemGiaTri() 'Chay Sub GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub Lần chỉnh sửa cuối: 13/11/18 Upvote 0 T

tam888

Thành viên tích cực
Tham gia 22/8/13 Bài viết 838 Được thích 510
tueyennhi đã viết: Trong file Public variable khi mình chạy thì đều thấy biến Var 1 và 2 có giá trị là 0. Vậy làm thế nào để gán được vào biến một con số cụ thể để có thể dùng giá trị biến đó trong một Sub khác? Bài đã được tự động gộp: 13/11/18 Có vẻ mình hiểu qua qua được chút rồi PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Public Const Var1 = 7 / 24 Public Const Var2 = 20 Sub XemGiaTri() 'Chay Sub GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub Nhấp chuột vào đây để mở rộng...
Khi đó không gọi là BIẾN (variable) mà là HẰNG (const) Upvote 0 snow25

snow25

Thành viên gạo cội
Tham gia 24/7/18 Bài viết 3,555 Được thích 3,610 Donate (Momo) Donate Giới tính Nam
tueyennhi đã viết: Trong file Public variable khi mình chạy thì đều thấy biến Var 1 và 2 có giá trị là 0. Vậy làm thế nào để gán được vào biến một con số cụ thể để có thể dùng giá trị biến đó trong một Sub khác? Bài đã được tự động gộp: 13/11/18 Có vẻ mình hiểu qua qua được chút rồi PHP: Sao chép. Option Explicit 'Yeu cau phai khai bao bien' Public Const Var1 = 7 / 24 Public Const Var2 = 20 Sub XemGiaTri() 'Chay Sub GanGiaTri roi chay Sub nay' MsgBox "Var1 is: " & Var1 & vbNewLine & "Var2 is: " & Var2 'Gia tri cua 2 bien Var1 va Var2 van ton tai' End Sub Nhấp chuột vào đây để mở rộng...
ở đây có 2 loại biến là biến toàn cục và biến cục bộ. biến toàn cục là biến dùng cho cả 1 chương trình chính.lẫn chương trình con. còn biến cục bộ là biến chỉ dùng cho 1 chương trình con khi thoát chương trình thì biến đó sẽ về không hết. vậy nên cái bài của bạn nên dùng biến toàn cục nhé.đó là dạng puclic đó.:D ở đây là mình nhớ vậy thôi :D không biết có gì sai không nữa. Upvote 0 T

tueyennhi

Thành viên tích cực
Tham gia 18/10/10 Bài viết 1,192 Được thích 105
snow25 đã viết: ở đây có 2 loại biến là biến toàn cục và biến cục bộ. biến toàn cục là biến dùng cho cả 1 chương trình chính.lẫn chương trình con. còn biến cục bộ là biến chỉ dùng cho 1 chương trình con khi thoát chương trình thì biến đó sẽ về không hết. vậy nên cái bài của bạn nên dùng biến toàn cục nhé.đó là dạng puclic đó.:D ở đây là mình nhớ vậy thôi :D không biết có gì sai không nữa. Nhấp chuột vào đây để mở rộng...
Mình khai báo một lô lốc biến Public. Đến lúc chạy sub ở module khác thì cái biến ấy nó vẫn giữ nguyên không giải phóng thì phải. Upvote 0 snow25

snow25

Thành viên gạo cội
Tham gia 24/7/18 Bài viết 3,555 Được thích 3,610 Donate (Momo) Donate Giới tính Nam
tueyennhi đã viết: Mình khai báo một lô lốc biến Public. Đến lúc chạy sub ở module khác thì cái biến ấy nó vẫn giữ nguyên không giải phóng thì phải. Nhấp chuột vào đây để mở rộng...
vậy bạn phải khai báo lại trong sub chứ nếu không nó vẫn giữ giá trị ở trương chình chính. Upvote 0 Pham Ngoc Trong

Pham Ngoc Trong

Thành viên mới
Tham gia 21/5/17 Bài viết 22 Được thích 7 Giới tính Nam Một type mới trong VBA đó là: LongLong và LongPtr, Thông thường bạn sẽ biết số nguyên có các kiểu: - Interger (phạm vi 0đến 2^8) - Long (phạm vi từ - 2^15 đến 2^15 -1) Nhưng giờ hệ thống 64bit đã đại trà, nên phát sinh kiểu dữ liệu mới cho "số nguyên" - LongPtr và LongLong là một kiểu mới, trong đó LongPtr có thể tự động thay đổi phạm vi giữa môi trường hệ thống 64bit và 32bit, còn LongLong chỉ ứng dụng trong môi trường hệ thống 64bit. LongLong có phạm vi lên tới -2^63 đến 2^63 -1 LongPtr thì vẫn giống Long khi trên 32bit, nhưng sẽ giống LongLong khi trên 64bit. Tham khảo chi tiết về: LongLong LongPtr *Hy vọng có thể giúp ích cho mọi người, Upvote 0 Bạn phải đăng nhập hoặc đăng ký để trả lời bài viết tại đây.

Bài viết mới nhất

HeSanbi
  • Đã giải quyết
FitRowXL v1.1 - Giãn dòng tự động và bổ trợ in ấn Excel (*01/2026 mới) (1 người xem)
    • Thích
    • Yêu thích
  • HeSanbi
  • 18/4/21
  • Lập Trình với Excel
Trả lời 71 Đọc 30K Hôm nay lúc 09:43 chothadiem chothadiem SA_DQ Copilot bình luận các ván cờ vua từng ngày.
    • Thích
  • SA_DQ
  • 3/11/25
  • Chia sẻ
Trả lời 60 Đọc 2K Hôm nay lúc 04:52 SA_DQ SA_DQ L Thu Chi Gia Đình (1 người xem)
    • Cười
  • lehang0812
  • Hôm qua, lúc 17:12
  • TPHCM
Trả lời 3 Đọc 70 Hôm nay lúc 02:59 son193 S ongke0711
  • Question Question
Tải hóa đơn điện tử (https://hoadondientu.gdt.gov.vn/) Excel Vba (3 người xem)
    • Thích
    • Yêu thích
    • Cảm ơn
  • ongke0711
  • 6/10/24
  • Lập Trình với Excel
5 6 7 Trả lời 622 Đọc 91K Hôm qua, lúc 16:11 LOGANWover L Quang_Hải
  • Question Question
Chia sẻ một thuật toán đơn giản để trộn cells (1 người xem)
    • Thích
    • Yêu thích
  • Quang_Hải
  • Thứ tư lúc 10:14
  • Lập Trình với Excel
Trả lời 12 Đọc 258 Hôm qua, lúc 11:13 Quang_Hải Quang_Hải HeSanbi TaxCode v4.33 - Tra cứu mã số thuế từ tổng cục thuế, masothue và thuvienphapluat (1 người xem)
    • Thích
    • Yêu thích
  • HeSanbi
  • 27/11/25
  • Các Add-ins cho excel
Trả lời 19 Đọc 3K Hôm qua, lúc 08:54 HeSanbi HeSanbi HeSanbi
  • Question Question
Tạo Add-in, tệp Excel, Word, Access tự động cập nhật phiên bản mới từ Cloud cho chính nó
    • Thích
    • Yêu thích
  • HeSanbi
  • Thứ hai lúc 20:14
  • Lập Trình với Excel
Trả lời 1 Đọc 195 Thứ tư lúc 17:03 HeSanbi HeSanbi TranThanhPhong Hàm EXACT
    • Thích
  • TranThanhPhong
  • 30/4/14
  • Dự án: Công thức & Hàm 97-2019
Trả lời 3 Đọc 9K Thứ ba lúc 15:52 ptm0412 ptm0412 giaiphap Add-Ins cho Excel 2007 -2016 32bit và 64bit (6 người xem)
    • Thích
    • Yêu thích
    • Ngạc nhiên
  • giaiphap
  • 8/8/15
  • Các Add-ins cho excel
4 5 6 Trả lời 518 Đọc 226K Thứ ba lúc 14:17 Gà Công Nghệ Gà Công Nghệ V Một Excel add-in vibe coding (1 người xem)
    • Thích
  • vietdang170
  • 28/1/26
  • Các Add-ins cho excel
Trả lời 18 Đọc 665 Thứ ba lúc 11:10 vietdang170 V H Xin giúp đặt điều kiện trong Conditional Formating
  • hoanglocphat
  • Thứ hai lúc 14:23
  • Hỏi đáp những vấn đề khác
Trả lời 6 Đọc 161 Thứ ba lúc 10:13 Gà Con yêu VBA Gà Con yêu VBA Nguyễn Duy Tuân
  • Dán lên cao
Phiên bản mới Add-in A-Tools AI v10 (2024)
    • Thích
  • Nguyễn Duy Tuân
  • 13/9/24
  • BLUESOFTS: A-Excel, A-Tools
Trả lời 61 Đọc 12K Thứ hai lúc 15:13 Nguyễn Duy Tuân Nguyễn Duy Tuân mrjun80 Xin giúp hàm excel để tìm 1 số trong số có 2 chữ số
  • mrjun80
  • Thứ bảy lúc 23:43
  • Hàm và công thức Excel
Trả lời 4 Đọc 170 Chủ nhật lúc 08:38 Gà Con yêu VBA Gà Con yêu VBA N Vấn đề về hiệu năng khi thực hiện ghép chuỗi trong VBA với tần suất lớn (1 người xem)
    • Thích
    • Cảm ơn
  • nguyendang95
  • 23/1/26
  • Excel và các ngôn ngữ lập trình khác
Trả lời 36 Đọc 1K Thứ bảy lúc 21:11 ptm0412 ptm0412 ongke0711
  • Question Question
Tra cứu thông tin mã số thuế (cập nhật lại code cũ)
    • Thích
    • Cảm ơn
    • Yêu thích
  • ongke0711
  • 24/7/25
  • Lập Trình với Excel
Trả lời 16 Đọc 2K Thứ bảy lúc 17:46 tuyethao T phuongnam366377 VNFastSearch – DLL tìm kiếm tiếng Việt tốc độ cao cho Excel VBA
  • phuongnam366377
  • Thứ bảy lúc 14:41
  • Excel và các ngôn ngữ lập trình khác
Trả lời 0 Đọc 146 Thứ bảy lúc 14:41 phuongnam366377 phuongnam366377 N
  • Question Question
Tạo khung viền ô theo số trong ô
    • Thích
  • Nguyễn Xuân Sơn
  • 29/1/26
  • Lập Trình với Excel
Trả lời 9 Đọc 239 Thứ bảy lúc 12:25 Mr.hieudoanxd Mr.hieudoanxd J Đừng chỉ "Cập nhật" dữ liệu. Hãy "Xếp chồng" chúng lên.
    • Thích
  • jack nt
  • 29/1/26
  • Excel và các ngôn ngữ lập trình khác
Trả lời 5 Đọc 287 Thứ bảy lúc 10:27 ptm0412 ptm0412 T gửi email đến nhân viên công ty
  • tuantv9
  • 26/1/26
  • Excel và các ngôn ngữ lập trình khác
Trả lời 2 Đọc 265 30/1/26 nguyendang95 N H
  • Question Question
Code trích lọc mặt hàng theo thuế suất GTGT
  • hoanglocphat
  • 29/1/26
  • Lập Trình với Excel
Trả lời 4 Đọc 254 30/1/26 Maika8008 Maika8008 Xem thêm… Chia sẻ: Facebook X Bluesky LinkedIn Reddit Pinterest Tumblr WhatsApp Email Chia sẻ Link

Thành viên có số lượng bài viết cao nhất tháng

  • HeSanbi 10
  • chothadiem 7
  • Gà Công Nghệ 5
  • Officexinh 4
  • vietdang170 4
  • pycckuu410 3
  • HieuCD 3
  • chiendich 3
  • hoanglocphat 3
  • VietHoangPhan 2
  • DeTong 2
  • Gà Con yêu VBA 2
  • Quang_Hải 2
  • linhdao2909 1
  • HUONGHCKT 1
  • vuvannguyen1972 1
  • Phuocam 1
  • ptm0412 1
  • LOGANWover 1

Thành viên có điểm tương tác cao nhất tháng

  • HeSanbi 15
  • Quang_Hải 7
  • vietdang170 5
  • Gà Con yêu VBA 4
  • pycckuu410 3
  • chiendich 3
  • DeTong 3
  • Phuocam 3
  • Officexinh 2
  • HUONGHCKT 2
  • HieuCD 2

Thời gian đếm ngược.

000 Ngày 00 Giờ 00 phút 00 giây Thân mời tham dự sự kiện sinh nhật GPE 2025
  • Trang chủ
  • Diễn đàn
  • Lập Trình với Excel
  • Website này sử dụng cookies. Tiếp tục sử dụng trang này, đồng nghĩa với việc bạn chấp nhận website sử dụng cookies. Chấp nhận Tìm hiểu thêm.…
Back Top Bottom

Từ khóa » Các Biến Trong Vba Excel