Hỏi về cách đặt tên cho vùng dữ liệu trong vba?

Liên hệ QC

KUMI

Bụi phấn
Tham gia
17/1/12
Bài viết
564
Được thích
571
Xin chào Thầy Cô và Anh Chị trong GPE!

Có một vấn đề này:

Khi Em thao tác chỉ một Sheet duy nhất,ví dụ là Sheets(1),với vùng A3:K10.
Và thay cho phải viết như thế này:
Mã:
   With Sheets(1)
        .[A3:K10].Locked = True
    End With
thì em đã đặt name cho vùng A3:K10=Range_1
Nên với code trên em có thể viết được như thế này:
Mã:
   With Sheets(1)
        .[Range_1].Locked = True
    End With
----------------
Nhưng nếu Em muốn thao tác với nhiều Sheets thì Phải đặt Name kiểu gì ạ:
Ví dụ nếu Em viết thế này:
Mã:
Dim a
For a = 4 To 6
    With Sheets(a)
        .[Range_1].Locked = True
    End With
Next
thì không được, nó chỉ có tác dụng đúng sheets mình đã đặt name mà không có tác dụng trên các sheets ta gọi ra. Vậy cần phải đặt tên kiểu gì cho trường hợp này ạ?

Thầy Cô và Anh Chị xem có cách gì không giúp em với ạ!Xin cảm ơn!
 
thì em đã đặt name cho vùng A3:K10=Range_1

Ý bạn là Define Name ấy à?
Tôi muốn biết bạn đã đặt name thế nào trong 1 file cụ thể (vì tôi thí nghiệm code trên chạy tốt bạn à)
Tôi đặt name kiểu này (xem hình)

Untitled.jpg
 
Upvote 0
Cảm ơn Thầy!
Thì ra là phải đặt cho từng sheets 1 và cho tất cả sheets mà ta muốn gọi.
Vậy mà con chỉ đăt cho 1 sheets.. hềhề!
 
Upvote 0
Xin hỏi Thầy cô và Anh Chị rằng: Đặt tên Name bằng các ký tự đặc biệt như thế nào?

Em không thể nào mà đặt ký tự đặc biệt vào tên Name trong DifineNamecđược.
Nhưng Em thấy có File mà có sử dụng Name với cái tên Name như thế này: \
Ai biết cách này chỉ em với ạ!
Xỉn cảm ơn!
 

File đính kèm

  • Names.xlsx
    14.1 KB · Đọc: 22
Lần chỉnh sửa cuối:
Upvote 0
Em làm được rồi thì ra là đặt Names như bình thường vậy mà có lúc em thử lại không được.
Có lẽ lúc đó em gõ nhầm dấu "\" thành dấu "/" nên không được.
 
Upvote 0
Web KT
Back
Top Bottom