Đặt tên cho Sheet (2 người xem)

Liên hệ QC

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

ThuNghi

Hãy cho rồi sẽ nhận!
Thành viên đã mất
Tham gia
16/8/06
Bài viết
3,808
Được thích
4,449
Nhờ các bạn chỉ giúp:
Tôi có file NKC, tôi đã tạo mỗi số cái là 1 sheet mang ký hiệu 111, 112, 113... từ file NKC (và theo CDPS).
- Giúp tôi viết 1 sub để thông báo là sheet mang tên x đã có rồi, xin bạn tạo Sheet khác, (như trên tôi đã tạo SC 111 rồi, mà tạo thêm lần nữa thì sẽ trùng tên => Msg).
- Và tạo một sheet tổng hợp chỉ ra bảng tính này có bao nhiêu SC (Sh.) để in thành trang tổng hợp, sổ này có những sổ cái TK nào.
Cám ơn
 
- Giúp tôi viết 1 sub để thông báo là sheet mang tên x đã có rồi, xin bạn tạo Sheet khác, (như trên tôi đã tạo SC 111 rồi, mà tạo thêm lần nữa thì sẽ trùng tên => Msg).
Chức năng này trong Excel đã có sẵn rồi, bạn không thể tạo được 2 sheet có cùng tên đâu.

- Và tạo một sheet tổng hợp chỉ ra bảng tính này có bao nhiêu SC (Sh.) để in thành trang tổng hợp, sổ này có những sổ cái TK nào
Bạn thử code sau:
Mã:
Public Sub Sheet_List()
Dim i As Byte
i = 1
Cells(i, 1) = "So Sheet trong file"
For Each Sheet In Worksheets
    i = i + 1
    Cells(i, 1) = Sheet.Name
Next
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Lý do là khi tôi dùng advance filter để tạo 1 sổ chi tiết từ sổ TH, tôi làm 1 macro lấy tên vùng cần filter vd la ô A1 ="xxx" đặt tên cho Sh, khi trùng nó báo lỗi. Muốn chuyên nghiệp hơn khi lấy biến A1="xxx" và kiểm tra tên Sheet, nếu có thì đặt biến khác. Tôi chưa biết cách kiểm tra tên Sheet bằng macro, dạng như là sheet có tồn tại chưa, giúp hộ nhé, cám ơn
 
Upvote 0
tổng hợp các sheet trong 1 workbook

nvson đã viết:
Chức năng này trong Excel đã có sẵn rồi, bạn không thể tạo được 2 sheet có cùng tên đâu.


Bạn thử code sau:
Mã:
Public Sub Sheet_List()
Dim i As Byte
i = 1
Cells(i, 1) = "So Sheet trong file"
For Each Sheet In Worksheets
    i = i + 1
    Cells(i, 1) = Sheet.Name
Next
End Sub

bạn ơi, cho hỏi bỏ đoạn lệnh trên vào chỗ nào để sử dụng được. Cảm ơn.
 
Upvote 0
Bạn vào Excel, nhấn Alt+F11.
Nhấn Insert/Module
Rồi paste đoạn code trên vào.
Nhấn F5 để chạy (trong VBA), nếu ở Excel nhấn Alt+F8...
 
Upvote 0
nvson đã viết:
Bạn vào Excel, nhấn Alt+F11.
Nhấn Insert/Module
Rồi paste đoạn code trên vào.
Nhấn F5 để chạy (trong VBA), nếu ở Excel nhấn Alt+F8...

Hi! bạn.

Có cách nào trong sheet chứa danh sách các tên sheet trong file có luôn link,để khi nhấp vào tên sheet nào đó thì sẽ di chuyển ngay đến sheet đó.

Thân chào bạn
 
Upvote 0
Sau khi bạn đã tạo được danh sách các tên sheet rồi, nếu muốn nhấn vào tên sheet nào thì nhảy ngay đến sheet đó bạn sử dụng chức năng Hyperlink (Vào Insert/Hyperlink).
 
Upvote 0
Nếu muốn "chuyên nghiệp" hơn thì sử dụng code sau:
Mã:
Sub Sheet_List()
Dim a, i
Dim sh1
i = 1
Cells(i, 1) = "Cac Sheet trong file:"
For Each sh1 In Worksheets
    a = sh1.Name
    i = i + 1
    Range("A" & i).Select
    ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="", SubAddress:=a & "!A1", TextToDisplay:=a
Next
End Sub
 
Upvote 0
Đó là do tên sheet có dấu cách (space). Bạn đặt tên sheet không có dấu cách là được.
 
Upvote 0
Cho minh hoi, khi khong muon dung cac module nay nua thi lam sao xoa hoac chinh sua ten cho de nho?
 
Upvote 0
Trong cửa sổ Project - VBA Project (Khung bên trái) trong Microsoft Visual Basic, nhấn phải chuột vào chữ Module1, chọn Remove Module1. Chọn Yes nếu muốn Save hoặc No nếu không muốn Save Module.
 
Upvote 0
Hi! bạn.

Có cách nào trong sheet chứa danh sách các tên sheet trong file có luôn link,để khi nhấp vào tên sheet nào đó thì sẽ di chuyển ngay đến sheet đó.

Thân chào bạn

Bạn xem file này thế nào? (sản phẩm của anhtuan1066)
Download File: Menu sheet and Hyperlink

Bạn có thể Rename, Delete, Insert... sheet (F9 để cập nhật)​
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom