duynhatgpe
Thành viên mới
- Tham gia
- 1/12/15
- Bài viết
- 42
- Được thích
- 5
vẫn chưa hiểu bạn mô tả là thế nào ấyXin chào anh chị GPE thân mến !
Hãy giúp mình tìm hiểu học hỏi code VBA này bằng For Each hay hàm gì đó để chỉ hiện ra kết quả "Yes"
"tìm hiểu học hỏi" cách trình bày vấn đề trước đã.Xin chào anh chị GPE thân mến !
Hãy giúp mình tìm hiểu học hỏi code VBA này bằng For Each hay hàm gì đó để chỉ hiện ra kết quả "Yes"
Bạn diễn giải cách tính thủ công để ra kết quả "Yes" xem sao.bằng For Each hay hàm gì đó để chỉ hiện ra kết quả "Yes"
Chạy code . . .Xin chào anh chị GPE thân mến !
Hãy giúp mình tìm hiểu học hỏi code VBA này bằng For Each hay hàm gì đó để chỉ hiện ra kết quả "Yes"
Sub ABC()
Dim sArr(), res(), tmp$, t1$, t2$, t3$
Dim sRow&, sCol&, n&, j&, k&
sArr = Sheet1.Range("E2:L2").Value
sRow = Len(sArr(1, 1)): sCol = UBound(sArr, 2)
ReDim res(1 To sRow, 1 To sCol)
t1 = sArr(1, 1): t2 = sArr(1, 2): t3 = sArr(1, 3)
tmp = Mid(t3, 12, 1)
For j = 1 To sRow
If Mid(t3, j, 1) = tmp Then
k = k + 1
res(k, 1) = Mid(t1, j, 1)
res(k, 2) = Mid(t2, j, 1)
res(k, 3) = "Yes"
For n = 4 To sCol
If Mid(sArr(1, n), j, 1) = Mid(sArr(1, n), 12, 1) Then
res(k, n) = "Yes"
Else
res(k, n) = "-"
End If
Next n
End If
Next j
Sheet1.Range("A4:L10000").Clear
If k Then Sheet1.Range("E7").Resize(k, sCol) = res
End Sub
Thành thật cám ơn , chúc luôn gặp nhiều may mắn và hạnh phúc !Chạy code . . .
Mã:Sub ABC() Dim sArr(), res(), tmp$, t1$, t2$, t3$ Dim sRow&, sCol&, n&, j&, k& sArr = Sheet1.Range("E2:L2").Value sRow = Len(sArr(1, 1)): sCol = UBound(sArr, 2) ReDim res(1 To sRow, 1 To sCol) t1 = sArr(1, 1): t2 = sArr(1, 2): t3 = sArr(1, 3) tmp = Mid(t3, 12, 1) For j = 1 To sRow If Mid(t3, j, 1) = tmp Then k = k + 1 res(k, 1) = Mid(t1, j, 1) res(k, 2) = Mid(t2, j, 1) res(k, 3) = "Yes" For n = 4 To sCol If Mid(sArr(1, n), j, 1) = Mid(sArr(1, n), 12, 1) Then res(k, n) = "Yes" Else res(k, n) = "-" End If Next n End If Next j Sheet1.Range("A4:L10000").Clear If k Then Sheet1.Range("E7").Resize(k, sCol) = res End Sub