请老师帮忙写个VBA的代码,在线等
答案:2 悬赏:70 手机版
解决时间 2021-03-25 07:17
- 提问者网友:爱唱彩虹
- 2021-03-24 18:05
请老师帮忙写个VBA的代码,在线等
最佳答案
- 五星知识达人网友:你可爱的野爹
- 2021-03-24 18:28
Sub pipeishuzi()
Dim i&, j&, n%
i = 2
While Cells(i, 20) <> ""
If Cells(i, 20) = "*" Then
i = i + 1
Else
n = IIf(n = 3, 1, n + 1)
j = 1
Do While j < 16 And Cells(i + j, 21) <> ""
If InStr(Cells(i + j, 21), Cells(i, 20)) > 0 Then
Cells(i, 20).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 21).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 22).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 22) = "匹配"
Exit Do
Else
Cells(i + j, 23).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 23) = "不匹配"
j = j + 1
End If
Loop
i = i + j
End If
Wend
End Sub
Dim i&, j&, n%
i = 2
While Cells(i, 20) <> ""
If Cells(i, 20) = "*" Then
i = i + 1
Else
n = IIf(n = 3, 1, n + 1)
j = 1
Do While j < 16 And Cells(i + j, 21) <> ""
If InStr(Cells(i + j, 21), Cells(i, 20)) > 0 Then
Cells(i, 20).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 21).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 22).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 22) = "匹配"
Exit Do
Else
Cells(i + j, 23).Font.Color = Choose(n, -16776961, -1003520, -16727809)
Cells(i + j, 23) = "不匹配"
j = j + 1
End If
Loop
i = i + j
End If
Wend
End Sub
全部回答
- 1楼网友:底特律间谍
- 2021-03-24 18:41
94087为什么匹配了?08758旁边的是2,不应该匹配70288吗?
规则就是有“*”项下移动一格,左边是数字,到右边找,找到了去左边,左边有*就像下移动,发现了数字就继续到右边匹配。是这样吧。
刚刚看了下,还要向下移动一格。代码如下:
Sub 匹配值()
Dim irow As Integer
Dim sht As Worksheet
Dim arr()
Dim arr1()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Set sht = ActiveSheet
irow = sht.Range("t1").CurrentRegion.Rows.Count
ReDim arr(1 To irow)
ReDim arr1(1 To irow)
For i = 1 To irow
arr(i) = sht.Range("t" & i)
arr1(i) = sht.Range("u" & i)
Next
k = 1
l1: For i = k To irow
If arr(i) <> "*" Then
For j = i + 1 To irow
If InStr(arr1(j), arr(i)) <> 0 Then
sht.Range("v" & j) = "匹配"
k = j + 1
GoTo l1
End If
Next
End If
Next
End Sub追答采纳我的呀
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯