Dim z1()
Dim z2()
ReDim z1(vsfmtcjl.Rows)
ReDim z2(vsfmtcjl.Rows)
Dim flag As Boolean
flag = True
Dim p, j As Integer
vsfmtcjl.Col = 3
For p = 1 To vsfmtcjl.Rows - 1
vsfmtcjl.Row = p
If flag = True Then
If vsfmtcjl.Text > 30 Then
z1(p - 1) = Trim(vsfmtcjl.Text)
flag = False
End If
Else
If vsfmtcjl.Text < 30 Then
z2(p - 1) = Trim(vsfmtcjl.Text)
flag = True
End If
End If
Nextvsfmtcjl里面的值是:36.4 27.5 35.94 27 25.5 35.5
问题: 当读到36.4的时候,第一个if语句把36.4放进了z1(0)里面,这时p=1,z2(0)=""空字符串,再循环读取27.5的时候,p=2,z1(1)=""空字符串,z2(1)=27.5
这样看每循环一次,两个数组中的一个肯定会产了一个""空,需要请教的是如何改这段代码,让每次循环不产生""空字符串.
Dim z2()
ReDim z1(vsfmtcjl.Rows)
ReDim z2(vsfmtcjl.Rows)
Dim flag As Boolean
flag = True
Dim p, j As Integer
vsfmtcjl.Col = 3
For p = 1 To vsfmtcjl.Rows - 1
vsfmtcjl.Row = p
If flag = True Then
If vsfmtcjl.Text > 30 Then
z1(p - 1) = Trim(vsfmtcjl.Text)
flag = False
End If
Else
If vsfmtcjl.Text < 30 Then
z2(p - 1) = Trim(vsfmtcjl.Text)
flag = True
End If
End If
Nextvsfmtcjl里面的值是:36.4 27.5 35.94 27 25.5 35.5
问题: 当读到36.4的时候,第一个if语句把36.4放进了z1(0)里面,这时p=1,z2(0)=""空字符串,再循环读取27.5的时候,p=2,z1(1)=""空字符串,z2(1)=27.5
这样看每循环一次,两个数组中的一个肯定会产了一个""空,需要请教的是如何改这段代码,让每次循环不产生""空字符串.
用两个变量,分别控制两个数组Dim z1()
Dim z2()
ReDim z1(vsfmtcjl.Rows)
ReDim z2(vsfmtcjl.Rows)
Dim flag As Boolean
flag = True
Dim p, j As Integer
vsfmtcjl.Col = 3
Dim i as Interger
Dim j as Interger
i=0
j=0
For p = 1 To vsfmtcjl.Rows - 1
vsfmtcjl.Row = p
If flag = True Then
If vsfmtcjl.Text > 30 Then
z1(i) = Trim(vsfmtcjl.Text)
i=i+1
flag = False
End If
Else
If vsfmtcjl.Text < 30 Then
z2(j) = Trim(vsfmtcjl.Text)
j=j+1
flag = True
End If
End If
Next