Peter đã phát triển một macro xóa tất cả các trang tính trong một sổ làm việc ngoại trừ một trang có tên là “Chỉ mục”. Macro này hoạt động tốt. Tuy nhiên, sau khi chạy macro, nếu anh ta thêm một trang tính mới, anh ta muốn nó được đặt tên là “Sheet1” làm mặc định, nhưng nó thực sự được đặt tên là một số sau đó, chẳng hạn như “Sheet3” hoặc “Sheet4”. Peter tự hỏi điều gì cần thiết để đặt lại số trang tính về mặc định mong đợi.

Cách dễ nhất để đặt lại đánh số trang tính là chỉ cần đóng sổ làm việc và mở lại. Tuy nhiên, điều đó liên quan đến một bước thủ công từ phía bạn. Nếu bạn đang thêm các trang tính mới qua macro, thì có thể bạn không muốn đóng và mở lại sổ làm việc theo cách thủ công.

Nếu muốn, bạn có thể tạo một macro đơn giản để thực hiện quá trình đóng và mở lại. Điều này sẽ hoạt động miễn là macro được lưu trữ trong Sổ làm việc Macro Cá nhân của bạn chứ không phải trong sổ làm việc bạn đang đóng.

Sub Reopen()

Dim wb As Excel.Workbook     Dim sPath As String

Set wb = ThisWorkbook     sPath = wb.FullName

Application.OnTime Now + TimeValue("00:00:01"), _       Application.Workbooks.Open(sPth)

wb.Close (True)

End Sub

Macro xác định tên của sổ làm việc hiện tại và sau đó đặt sự kiện OnTime để mở sổ làm việc 1 giây trong tương lai. Tuy nhiên, trong 1 giây đó, sổ làm việc được đóng và lưu, cho phép mở lại thành công.

Nếu muốn, bạn cũng có thể chọn thêm các trang tính mới của mình thông qua macro.

Macro ngắn sau đây thêm một trang tính và sau đó ngay lập tức đổi tên trang tính đó thành tên mong muốn.

Sub AddWs()

Worksheets.Add after:=Sheets(Sheets.Count)

Sheets(Sheets.Count).Name = "Sheet" & Sheets.Count - 1 End Sub

Bạn sẽ muốn sử dụng các giải pháp này và tìm giải pháp nào phù hợp nhất với nhu cầu của mình, đặc biệt nếu bạn muốn tích hợp giải pháp với một macro đã có.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (6103) áp dụng cho Microsoft Excel 2007, 2010, 2013 và 2016.