偶是菜菜鸟 刚刚学习vb 而且自学 没有啥基础
msdn能帮不少忙 可是有许多问题没法查msdn
又无处可问 自己想又不知道哪出了问题 唉
自学真的好苦啊
是吗?
你测试过这段代码吗?我测试过 这是你想要的结果吗?
我稍做解释:
用户输入的情况有三:
1 在Text1中输入的行数比Text2中的多
2 在Text1中输入的行数比Text2中的少
3 两者行数相等
程序就是根据这三种情况写的:
Dim s() As String
Dim a() As String
s = Split(RichTextBox1.Text, Chr(13))
a = Split(RichTextBox2.Text, Chr(13))
上面部分是你自己写的,我不用解释
Dim minnum As Integer '定义该变量用于存贮两个TextBox中行数较少者的行数
Dim leftnum As Integer ‘定义该变量用于后面判断那一个数组中的元素还没遍历完
’下面获取两个TextBox中行数较少者的行数
If UBound(s) >= UBound(a) Then
minnum = UBound(a)
Else
minnum = UBound(s)
End If
‘下面做一个减法,如果 leftnum大于0说明,后面第一次遍历时s数组没遍历完,反之说明a数组没有遍历完
leftnum = UBound(s) - UBound(a)
’下面将行数相等部分遍历了
For i = 0 To minnum
RichTextBox3.Text = RichTextBox3.Text & s(i) & "*" & a(i) & Chr(13)
Next
‘通过判断leftnum将剩余部分遍历了
If leftnum >= 0 Then
For i = minnum + 1 To UBound(s)
RichTextBox3.Text = RichTextBox3.Text & s(i) & "*" & Chr(13)
Next
Else
For i = minnum + 1 To UBound(a)
RichTextBox3.Text = RichTextBox3.Text & Chr(13) & "*" & a(i)'这种情况下每个* 后面多了个换行符
Next
End If