VBA - Tìm tọa độ cột theo điều kiện tìm kiếm

Liên hệ QC

Phương Phương mito

Thành viên thường trực
Tham gia
1/5/19
Bài viết
275
Được thích
65
Em có câu hỏi VBA mong anh chị và mọi người giúp đỡ ạ.
Tại dòng 6, em muốn tìm ô nào chứa chữ "Hoa sung". Sau đó xác định ô đó là cột thứ mấy. Ví dụ theo file thì kết quả là 8. Em cảm ơn ạ/
 

File đính kèm

  • Cells - column.xlsx
    8.6 KB · Đọc: 9
Upvote 0
Anh ghi lại cái Macro và thêm 1 dòng code nữa thì nó như sau:

Mã:
Sub Macro1()
'
' Macro1 Macro
'

'
    Cells.Find(What:="hoa sung", After:=ActiveCell, LookIn:=xlFormulas2, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
        MsgBox "Cells(" & ActiveCell.Row & "," & ActiveCell.Column & ")"
        
End Sub
 
Upvote 0
Upvote 0
Anh ghi lại cái Macro và thêm 1 dòng code nữa thì nó như sau:

Mã:
Sub Macro1()
'
' Macro1 Macro
'

'
    Cells.Find(What:="hoa sung", After:=ActiveCell, LookIn:=xlFormulas2, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
        MsgBox "Cells(" & ActiveCell.Row & "," & ActiveCell.Column & ")"
       
End Sub
dạ, em cảm ơn các Anh ạ.
 
Upvote 0
Em có câu hỏi VBA mong anh chị và mọi người giúp đỡ ạ.
Tại dòng 6, em muốn tìm ô nào chứa chữ "Hoa sung". Sau đó xác định ô đó là cột thứ mấy. Ví dụ theo file thì kết quả là 8. Em cảm ơn ạ/
1/ Chọn A1 rồi nhấn tổ hợp ctrl + shift + 8 (số 8 bên phần chữ).
2/ Tiếp theo ctrl + F, hộp thoại xuất hiện chọn thẻ Find, trong khung Find what gõ chữ "Hoa sung" nhấn nút Find All, nó sẽ chọn dòng đầu tiên.
3/ Để tìm và chọn tất cả những chữ "Hoa sung" bạn nhấn phím shift rồi click chọn dòng cuối cùng sau đó đóng hộp thoại thì nó vẫn chọn trên tất cả các Cells có chữ "Hoa sung" (xem hình).
 

File đính kèm

  • A_F.JPG
    A_F.JPG
    94.1 KB · Đọc: 14
Upvote 0
Anh ghi lại cái Macro và thêm 1 dòng code nữa thì nó như sau:

Mã:
Sub Macro1()
'
' Macro1 Macro
'

'
    Cells.Find(What:="hoa sung", After:=ActiveCell, LookIn:=xlFormulas2, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=False).Activate
        MsgBox "Cells(" & ActiveCell.Row & "," & ActiveCell.Column & ")"
       
End Sub
Dạ, cho em hỏi làm sao để lấy ra Sheet2.Range("A1") giá trị của cột ạ. Ví dụ, tại A1 giá trị là 8
 
Upvote 0
Upvote 0
Ý bạn là sao, bạn cho ví dụ cụ thể nhé.
Mã:
msgbox "Sheet2.Cells(1,1) " & Sheet2.Cells(1,1) & " - Sheet2.range('A1')" & sheet2.range("A1")
Dạ, ý em là vầy ạ:

Đoạn này của anh MsgBox "Cells(" & ActiveCell.Row & "," & ActiveCell.Column & ")" nó sẽ có kết quả là (6,8)

Bây giờ e không muốn tạo cải Msgbox này mà chỉ lấy cái chữ "Hoa sung" tìm được nó ở cột thứ mấy ạ và cho kết quả ra Cell A1 trên sheet2 ạ

Kiểu như Sheet2.Range("A1") = Cells(" ActiveCell.Column")
Kết quả ra thì tại ô A1 của sheet2 là 8
 
Upvote 0
Dạ, ý em là vầy ạ:

Đoạn này của anh MsgBox "Cells(" & ActiveCell.Row & "," & ActiveCell.Column & ")" nó sẽ có kết quả là (6,8)

Bây giờ e không muốn tạo cải Msgbox này mà chỉ lấy cái chữ "Hoa sung" tìm được nó ở cột thứ mấy ạ và cho kết quả ra Cell A1 trên sheet2 ạ

Kiểu như Sheet2.Range("A1") = Cells(" ActiveCell.Column")
Kết quả ra thì tại ô A1 của sheet2 là 8
Bạn thử như sau:
Mã:
Sheet2.Range("A1") = ActiveCell.Column
 
Upvote 0
Web KT
Back
Top Bottom