Sub pan0()
`建立pano过程
Dim xingming$, x%, y%, zu1$, zu2$, shu1$
`声明变量($为字符型,%为整数型)
Dim m&, Arr, Arr1, Brr
`声明数组(&是长整型 Long)
m = Sheet1.Range("a65536").End(xlUp).Row
`sheet1的最后非空行的行号赋给m
Arr = Sheet1.Range("a1:b" & m)
`(sheet1的a1:bm单元格区域的值赋给数组arr) 假如m=100,则Range("a1:b" & m)=Range("a1:b100")
Arr1 = Sheet2.[a1].CurrentRegion
`sheet2中a1相邻的当前区域的值赋给数组arr1
ReDim Brr(1 To m - 1, 1 To 4)
`重新声明数组brr(包含m-1行,4列)
For y = 2 To m
`y从2到m
For x = 2 To 5
`x从2到5
xingming = Arr(y, 2)
`把数组arr的(y行第二列)的值赋给xingming
zu1 = Arr1(x, 1)
`zu1为数组arr1的第一列x行
zu2 = Arr1(x, 2)
`zu1为数组arr1的第2 列x行
If InStr(zu1, xingming) Then
`如果zu1包含xingming,那么
Brr(y - 1, x - 1) = "1"
` 把1赋值给数组brr的第y-1行,x-1列(因为xy是从2开始递变的,而brr数组要从1开始)
ElseIf InStr(zu2, xingming) Then
`zu2包含xingming,那么
Brr(y - 1, x - 1) = "2"
`把字符串2赋值给数组brr的第y-1行,x-1列
Else
`否则
Brr(y - 1, x - 1) = "3"
`把字符串3赋值给数组brr的第y-1行,x-1列
End If
Next
Next
Sheets("fx1").Cells(2, 1).Resize(UBound(Brr), 4) = Brr
`把数组Brr赋给Sheets("fx1")中单元格B2为起点的单元格区域,(行数=数组的第一维的最大上界,列数=4)
End Sub
`建立pano过程
Dim xingming$, x%, y%, zu1$, zu2$, shu1$
`声明变量($为字符型,%为整数型)
Dim m&, Arr, Arr1, Brr
`声明数组(&是长整型 Long)
m = Sheet1.Range("a65536").End(xlUp).Row
`sheet1的最后非空行的行号赋给m
Arr = Sheet1.Range("a1:b" & m)
`(sheet1的a1:bm单元格区域的值赋给数组arr) 假如m=100,则Range("a1:b" & m)=Range("a1:b100")
Arr1 = Sheet2.[a1].CurrentRegion
`sheet2中a1相邻的当前区域的值赋给数组arr1
ReDim Brr(1 To m - 1, 1 To 4)
`重新声明数组brr(包含m-1行,4列)
For y = 2 To m
`y从2到m
For x = 2 To 5
`x从2到5
xingming = Arr(y, 2)
`把数组arr的(y行第二列)的值赋给xingming
zu1 = Arr1(x, 1)
`zu1为数组arr1的第一列x行
zu2 = Arr1(x, 2)
`zu1为数组arr1的第2 列x行
If InStr(zu1, xingming) Then
`如果zu1包含xingming,那么
Brr(y - 1, x - 1) = "1"
` 把1赋值给数组brr的第y-1行,x-1列(因为xy是从2开始递变的,而brr数组要从1开始)
ElseIf InStr(zu2, xingming) Then
`zu2包含xingming,那么
Brr(y - 1, x - 1) = "2"
`把字符串2赋值给数组brr的第y-1行,x-1列
Else
`否则
Brr(y - 1, x - 1) = "3"
`把字符串3赋值给数组brr的第y-1行,x-1列
End If
Next
Next
Sheets("fx1").Cells(2, 1).Resize(UBound(Brr), 4) = Brr
`把数组Brr赋给Sheets("fx1")中单元格B2为起点的单元格区域,(行数=数组的第一维的最大上界,列数=4)
End Sub