Riek đã gặp sự cố khi phát triển macro thiết lập màn hình cho người dùng nhập. Các cột A: G luôn cần ở trên màn hình, vì vậy macro của anh ấy sẽ đóng băng các cột đó. Sau đó, anh ta ra lệnh di chuyển đến cột Z để bắt đầu nhập liệu. Điều này đặt cột T: Z ở bên phải của các cột cố định A: G. Điều Riek thực sự muốn là để các cột Z: AF xuất hiện ở bên phải A: G, nhưng anh ấy không biết làm thế nào để đạt được điều đó.

Có một số cách để đạt được kết quả mong muốn. Đầu tiên là chỉ cần di chuyển “qua” mục tiêu mong muốn, sau đó quay lại nó, như trong macro sau:

Sub GotoCol1()

With Application         ActiveWindow.FreezePanes = False         Range("H1").Select         ActiveWindow.FreezePanes = True         .Goto Range("IV1")

.Goto Range("Z1")

End With End Sub

Các dòng mã quan trọng là những dòng sử dụng phương pháp Goto. Bước nhảy đầu tiên là đến ô cuối cùng của hàng đầu tiên và bước nhảy thứ hai di chuyển trở lại mục tiêu thực, Z1. Bằng cách di chuyển theo cách này, cột Z kết thúc ngay bên phải của phạm vi cố định, A: G.

Mặc dù điều này hoạt động tốt, nhưng giải pháp tốt hơn sẽ là sử dụng tham số Scroll với phương thức Goto. Hãy xem xét ví dụ sau:

Sub GotoCol2()

With Application         ActiveWindow.FreezePanes = False         Range("H1").Select         ActiveWindow.FreezePanes = True         .Goto Reference:=Range("Z1"), Scroll:=True     End With End Sub

Tham số Scroll là tùy chọn với phương thức Goto; nó mặc định là Sai. Nếu bạn đặt nó thành True, thì Goto sẽ cuộn qua cửa sổ để góc trên bên trái của phạm vi mục tiêu (Z1) xuất hiện ở góc trên bên trái của cửa sổ.

_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 (2464) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: