Thêm cụm từ "_Old" vào tiếp vị ngữ của tất cả các tên Sheet (3 người xem)

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

AnhThu-1976

Thành viên tích cực
Tham gia
17/10/14
Bài viết
1,094
Được thích
181
Em chào tất cả thành viên
Các anh chị giúp em code như sau
Giả sử trong 1 file có 2 sheet: sheet1 và sheet2
Em muốn sau khi chạy code thì, tất cả các sheet được thêm cụm từ "_Old" vào tiếp vị ngữ của tất cả các tên Sheet
ví dụ như trên thành: sheet1_Old; sheet2_Old
Em cảm ơn!
 
Anh có thể sử dụng vòng lặp:
Mã:
Sub RenameSheet()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        If Right(ws.Name, 4) <> "_Old" Then
            ws.Name = ws.Name & "_Old"
        End If
    Next ws
    MsgBox "Đổi tên các sheet thành công!"
End Sub
Hy vọng giúp được anh!
 
Upvote 0
Nếu người ta bấm nhiều lần thì chỉ thêm cụm từ trên 1 lần thôi ạ
Thêm 1 lựa chọn nữa :
Nếu tên sheet đã có _Old rồi nhưng biết đâu nếu thêm 1 ký tự hoặc 1 khoảng trắng (Space) vào cuối tên sheet thì sheet đó lại được thêm tiếp _Old vào cuối Ví dụ "sheet1_Old1" hoặc "Sheet1_Old " Thì rất có thể khi chạy code sẽ ra thành "Sheet1_Old1_Old" hoặc "Sheet1_Old _Old"
Bạn thử code này xem sao?

Mã:
Sub DoiTenSheet()
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        If InStr(Trim(ws.Name), "_Old") = 0 Then
            ws.Name = ws.Name & "_Old"
        End If
    Next ws
    MsgBox "Ðoi tên các sheet thành công!"
End Sub
 
Upvote 0

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

Back
Top Bottom