Chuyển đến một trang cụ thể (Microsoft Excel)
Giả sử rằng bạn có một trang tính lớn yêu cầu 16 trang khi in ra. Bạn có thể tự hỏi liệu có cách nào, khi làm việc trong trang tính, có thể chuyển đến một số trang nhất định, chẳng hạn như trang 5.
Người dùng Word biết rằng họ có thể, trong Word, sử dụng hộp thoại Đi tới để chuyển đến các trang khác nhau, nhưng không có tính năng này trong Excel. Tuy nhiên, có một số cách bạn có thể tiếp cận vấn đề.
Một cách tiếp cận là chọn ô xuất hiện ở đầu trang.
(Ví dụ: ô đó xuất hiện ở trên cùng bên trái của trang 5.) Sau đó, bạn có thể xác định tên cho ô, chẳng hạn như Trang05. Thực hiện việc này cho từng trang trong trang tính của bạn và sau đó bạn có thể sử dụng các tính năng trong Excel để chuyển đến các tên đó.
Một cách khác bạn có thể làm là sử dụng chế độ xem trước ngắt trang. (Để chuyển sang xem trước ngắt trang, hãy chọn Xem | Xem trước ngắt trang.) Sau đó, bạn có thể xem vị trí của ngắt trang, chọn một ô trên trang bạn muốn, rồi quay lại chế độ xem bình thường.
Cũng có thể tạo macro cho phép bạn chuyển đến một trang cụ thể, nhưng nó không dễ dàng như bạn nghĩ. Lý do liên quan đến việc sử dụng ngắt trang cứng, có thể thay đổi nơi bắt đầu và kết thúc của trang. Tuy nhiên, macro sau đây có thể thực hiện thủ thuật cho bạn. Nó nhắc người dùng nhập số trang rồi chọn ô trên cùng bên trái trên trang đã nhập.
Sub GotoPageBreak() Dim iPages As Integer Dim wks As Worksheet Dim iPage As Integer Dim iVertPgs As Integer Dim iHorPgs As Integer Dim iHP As Integer Dim iVP As Integer Dim iCol As Integer Dim lRow As Long Dim sPrtArea As String Dim sPrompt As String Dim sTitle As String Set wks = ActiveSheet iPages = ExecuteExcel4Macro("Get.Document(50)") iVertPgs = wks.VPageBreaks.Count + 1 iHorPgs = wks.HPageBreaks.Count + 1 sPrtArea = wks.PageSetup.PrintArea sPrompt = "Enter a page number (1 through " sPrompt = sPrompt & Trim(Str(iPages)) & ") " sTitle = "Enter Page Number" iPage = InputBox(Prompt:=sPrompt, Title:=sTitle) If wks.PageSetup.Order = xlDownThenOver Then iVP = Int((iPage - 1) / iHorPgs) iHP = ((iPage - 1) Mod iHorPgs) Else iHP = Int((iPage - 1) / iVertPgs) iVP = ((iPage - 1) Mod iVertPgs) End If If iVP = 0 Then If sPrtArea = "" Then iCol = 1 Else iCol = wks.Range(sPrtArea).Cells(1).Column End If Else iCol = wks.VPageBreaks(iVP).Location.Column End If If iHP = 0 Then If sPrtArea = "" Then lRow = 1 Else lRow = wks.Range(sPrtArea).Cells(1).Row End If Else lRow = wks.HPageBreaks(iHP).Location.Row End If wks.Cells(lRow, iCol).Select Set wks = Nothing End Sub
_Lưu ý: _
Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (5823) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003.