Xin code tự động Enter khi tab đến 1 cột cố định

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài
Hi bạn, mình test thứ có chạy, mà giờ mình cần ở vị trí khác, ví dụ từ AA đến AF thì phải sửa ntn bạn, mình mò mà ko biết nhiều nên ko sửa được
Private Sub Worksheet_Change(ByVal Target As Range)
'KHAI BAO BIEN
Dim firtsCol As String, lastCol As String 'Khai báo biên cột đầu và cột cuối theo dạng chữ
Dim fc As Long, lc As Long 'Khai báo biên cột đầu và cột cuối theo dạng số
Dim lr As Long 'Khai báo biến dòng cuối
Dim r As Range, activeRange As Range 'Khai báo biến vùng được chọn để thực hiện
'GAN GIA TRI CAC BIEN
firtsCol = "AA" 'Chọn cột đầu (Theo dạng chữ)
lastCol = "AE" 'Chọn cột cuối (Theo dạng chữ)

fc = Columns(firtsCol).Column 'Lấy giá trị cột đầu
lc = Columns(lastCol).Column 'Lấy giá trị cột cuối
lr = Cells(Rows.Count, fc).End(xlUp).Row 'lay gia tri dong duoc chon
'THUC HIEN
If Not Intersect(Target, Range(Cells(1, fc), Cells(lr, lc))) Is Nothing Then
Set activeRange = Range(Cells(lr, fc), Cells(lr, lc - 1))
For Each r In activeRange
If r <> "" Then r.Offset(0, 1).Select
Next
If Cells(lr, lc) <> "" Then
Cells(lr, lc).Offset(1, fc - lc).Select
End If
End If
End Sub
Bài đã được tự động gộp:

Private Sub Worksheet_Change(ByVal Target As Range)
'KHAI BAO BIEN
Dim firtsCol As String, lastCol As String 'Khai báo biên cột đầu và cột cuối theo dạng chữ
Dim fc As Long, lc As Long 'Khai báo biên cột đầu và cột cuối theo dạng số
Dim lr As Long 'Khai báo biến dòng cuối
Dim r As Range, activeRange As Range 'Khai báo biến vùng được chọn để thực hiện
'GAN GIA TRI CAC BIEN
firtsCol = "AA" 'Chọn cột đầu (Theo dạng chữ)
lastCol = "AE" 'Chọn cột cuối (Theo dạng chữ)

fc = Columns(firtsCol).Column 'Lấy giá trị cột đầu
lc = Columns(lastCol).Column 'Lấy giá trị cột cuối
lr = Cells(Rows.Count, fc).End(xlUp).Row 'lay gia tri dong duoc chon
'THUC HIEN
If Not Intersect(Target, Range(Cells(1, fc), Cells(lr, lc))) Is Nothing Then
Set activeRange = Range(Cells(lr, fc), Cells(lr, lc - 1))
For Each r In activeRange
If r <> "" Then r.Offset(0, 1).Select
Next
If Cells(lr, lc) <> "" Then
Cells(lr, lc).Offset(1, fc - lc).Select
End If
End If
End Sub
Bạn thay cột muốn chọn vào chỗ bôi đậm của đoạn code
 
Ối zời ơi, thế thì phức tạp quá. Để tớ nghĩ đã. Từ cột F rồi nhảy AA, rồi nhảy lam ba đa thì căng đây.
mình xài code của bạn Hesanbi ngon và thỏa mãn yêu cầu rồi bạn nhé
Bài đã được tự động gộp:

Private Sub Worksheet_Change(ByVal Target As Range)
'KHAI BAO BIEN
Dim firtsCol As String, lastCol As String 'Khai báo biên cột đầu và cột cuối theo dạng chữ
Dim fc As Long, lc As Long 'Khai báo biên cột đầu và cột cuối theo dạng số
Dim lr As Long 'Khai báo biến dòng cuối
Dim r As Range, activeRange As Range 'Khai báo biến vùng được chọn để thực hiện
'GAN GIA TRI CAC BIEN
firtsCol = "AA" 'Chọn cột đầu (Theo dạng chữ)
lastCol = "AE" 'Chọn cột cuối (Theo dạng chữ)

fc = Columns(firtsCol).Column 'Lấy giá trị cột đầu
lc = Columns(lastCol).Column 'Lấy giá trị cột cuối
lr = Cells(Rows.Count, fc).End(xlUp).Row 'lay gia tri dong duoc chon
'THUC HIEN
If Not Intersect(Target, Range(Cells(1, fc), Cells(lr, lc))) Is Nothing Then
Set activeRange = Range(Cells(lr, fc), Cells(lr, lc - 1))
For Each r In activeRange
If r <> "" Then r.Offset(0, 1).Select
Next
If Cells(lr, lc) <> "" Then
Cells(lr, lc).Offset(1, fc - lc).Select
End If
End If
End Sub
Bài đã được tự động gộp:


Bạn thay cột muốn chọn vào chỗ bôi đậm của đoạn code
Vừa thử cũng ngon lành rồi bạn nhé, cảm ơn bạn
 
Lần chỉnh sửa cuối:
Mình xin hỏi 1 chút. Có cách nào khi nhập liệu ô A1 đủ 5 ký tự thì nó tự động nhảy xuống ô A2 mà không cần bấm ENTER không ạ?
 
Web KT
Back
Top Bottom