Mình xin gửi file đính kèm ạChào các bạn, các anh/ chị,
Mình cần hỗ trợ lệnh trong VBA để xác định vị trí của 1 ô trong 1 vùng dữ liệu như trong file đính kèm.
Các bạn vầ các anh/ chị xem và hỗ trợ giúp mình nhé. Xin cảm ơn.
Bạn thử xem đúng ý ko?Sub GPE()
MsgBox sheet1.[B2:J21].Find("A").Address
End Sub
Dạ đúng rồi bạn.Bạn thử xem đúng ý ko?
Function GPE(fStr As String, sRng As Range, Opt As Byte)
'Opt = 1 trả về hàng ; opt = 2 trả về cột
On Error GoTo Thoat
Dim fRng As Range
Set fRng = sRng.Find(fStr, , xlFormulas, xlWhole)
If Not fRng Is Nothing Then
If Opt = 1 Then
GPE = fRng.Row
ElseIf Opt = 2 Then
GPE = fRng.Column
Else
GPE = "Tham so sai"
End If
Else
GPE = "Khong tim thay"
End If
Thoat: Exit Function
End Function
Thớt đòi 2 biến mờ.Bạn thử xem đúng ý chưa nhé
Cảm ơn bạn nhé,Bạn thử xem đúng ý chưa nhé
Cảm ơn bạn đã góp ý.Thớt đòi 2 biến mờ.
Sub DiaChi(sStr As String, rg As Range, ByRef rw As Long, ByRef cl As Long)
...
rw = dong
cl = cot
End Sub
Function DiaChi(sStr As String, rg As Range) As Variant
Dim a(1 To 2)
...
a(1) = dong
a(2) = cot
DiaChi = a
End Function
Bạn @Hamedanger cho mình hỏi xíu nhé. tại sao opt bạn lại dùng as byte nhỉ, hay do thói quen bạn thích số nguyên 8 bit.Bạn thử xem đúng ý chưa nhé
Bạn ở đây lâu quá rồi mà không biết rằng đó là kiểu cũ của GPE?Bạn @Hamedanger cho mình hỏi xíu nhé. tại sao opt bạn lại dùng as byte nhỉ, hay do thói quen bạn thích số nguyên 8 bit.
Tự mình thấy lạ nên mới thắc mắc.
Sao giống bài này vậy?Mình muốn đưa vùng B2:J21 vào hàm GPE của bạn Hamedanger như dòng code bị bôi đỏ bên trên ạ.
Vâng cảm ơn bạn, mình cũng đang tìm hiểu từ từ, nhưng tại lâu lâu mới đụng vô nên nhiều cái không nhớ. Đoạn code bạn chỉ mình áp dụng được rồi. Cảm ơn bạn nhiều ạ.Sao giống bài này vậy?
(1) VBA - Tìm tọa độ cột theo điều kiện tìm kiếm | Giải Pháp Excel (giaiphapexcel.com)
"đưa vùng B2:J21 ... "
Mình học từ từ đã, giờ còn chưa biết gọi tới Worksheet, Range, Cells thì không nên làm gì tiếp.
col = GPE("chuỗi cần tìm", Sheet1.Range("B2:J21"), 1)
Opt khi nhập vào chỉ là 1 hoặc 2, mình thấy byte là đủ rồi , đơn giản vậy thôi bạnBạn @Hamedanger cho mình hỏi xíu nhé. tại sao opt bạn lại dùng as byte nhỉ, hay do thói quen bạn thích số nguyên 8 bit.
Tự mình thấy lạ nên mới thắc mắc.
để là "bô luyn" cho nó tiết kiệm hơn, một bit thì chắc chắn sẽ tốt hơn 8 bít. cháu trộm nghĩ là như vậy.Bạn ở đây lâu quá rồi mà không biết rằng đó là kiểu cũ của GPE?