Bấm end, nhảy đến đúng ô mình muốn

Liên hệ QC

ExQues

Thành viên mới
Tham gia
4/7/08
Bài viết
49
Được thích
0
Sheet của tôi có 10 cột từ A tới J.

Ví dụ tôi đang ở cột D, bấm nút HOME thì nó nhảy ngang về cột A. Bây giờ tôi muốn excel hiểu cột J là cột cuối để khi bấm End nó sẽ nhảy cùng hàng tới ngay cột J, thay vì đang ở A muốn tới J thì phải bấm ngang qua từng ô.
 
Sheet của tôi có 10 cột từ A tới J.

Ví dụ tôi đang ở cột D, bấm nút HOME thì nó nhảy ngang về cột A. Bây giờ tôi muốn excel hiểu cột J là cột cuối để khi bấm End nó sẽ nhảy cùng hàng tới ngay cột J, thay vì đang ở A muốn tới J thì phải bấm ngang qua từng ô.
Yêu cầu của bạn, có cách giải quyết, nhưng không phải là ấn nút "END", mà là ấn Ctrl+ phím mũi tên qua phải!
 
Nếu dữ liệu qua khỏi cột J luôn mà vẫn muốn nó chỉ về J thôi thì mình có 1 cách khác đây!
Bạn bấm phải chuột lên tên Sheet chọn View Code. Tiếp theo nạp đoạn code này vào:
PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.OnKey "{END}", "doicuoi"
k = Target.Row
End Sub
Tiếp theo, bấm phải chuột lên tên Sheet (trong VBA), chọn Insert -> Module -> cuối cùng copy đoạn code dưới vào và chạy thử xem.
PHP:
Public k As Byte
Sub doicuoi()
Cells(k, "J").Select
End Sub
Thân.
 
Sheet của tôi có 10 cột từ A tới J.

Ví dụ tôi đang ở cột D, bấm nút HOME thì nó nhảy ngang về cột A. Bây giờ tôi muốn excel hiểu cột J là cột cuối để khi bấm End nó sẽ nhảy cùng hàng tới ngay cột J, thay vì đang ở A muốn tới J thì phải bấm ngang qua từng ô.

Cái này chỉ dùng VBA thôi :
Bạn xem code sau nha :
PHP:
'With thisworkbook

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "{END}"
End Sub

Sub workbook_open()
Application.OnKey "{END}", "PressEnd"
End Sub

'========================================

' With Module

Sub PressEnd()
Cells(ActiveCell.Row, 10).Select
End Sub
 

File đính kèm

  • Book2.xls
    34 KB · Đọc: 22
Lần chỉnh sửa cuối:
Vấn đề này viết code không khó! Nhưng mình nghĩ có cần thiết vậy không? Vì excel đã có rồi mà!

Thêm vào đó, nếu ta thêm 1 cột dữ liệu nữa (ví dụ cột K), thì lúc đó phải sửa code lại nữa sao!
 
Nếu bàn phím có nút 'CTRL' thì giữ nó khi nhấn {END}

Đúng trong trường hợp từ 'A' => 'J' đều có dữ liệu;

Nếu có ô nào đó trong hàng để trống, thì có lẻ phải dùng tổ hợp phím để chạy macro sau:
PHP:
Sub DenCuoiDong()
 Cells(Selection.Row, 255).End(xlToLeft).Select
End Sub
 
Đúng trong trường hợp từ 'A' => 'J' đều có dữ liệu;

Nếu có ô nào đó trong hàng để trống, thì có lẻ phải dùng tổ hợp phím để chạy macro sau:
PHP:
Sub DenCuoiDong()
 Cells(Selection.Row, 255).End(xlToLeft).Select
End Sub
Khỏi code anh ơi! Em thử thấy Ctrl + End luôn đúng, kể cả với dử liệu không liên tục
 
Web KT
Back
Top Bottom