VB 文本查找

来源:百度知道 编辑:UC知道 时间:2024/09/24 01:48:22
20070401-01 51805
20070401-02 12738
20070401-03 93873
20070401-04 32579
20070401-05 93914
20070401-06 82309
20070401-07 58517
20070401-08 98172
20070401-09 90320
20070401-10 35304
20070401-11 96748
.......
20080715-03 48558
20080715-04 37549
20080715-05 57846
20080715-06 27238
20080715-07 01180
20080715-08 81945
20080715-09 79157
20080715-10 84692
这是放在D:\BonusNumber.txt 中的数据,数据有许多行
我要做的是:
比如倒数第三二一行的最后数字572,我要做的是让VB倒着往上面找,至到找到连续三行的数字最后一个也为5 7 2 ,然后输出下一行的最后一个数字,在text1中
如:
20080415-21 01245
20080415-22 99457
20080415-23 83202
20080715-24 74616
.......
20080715-08 81945
20080715-09 79157
20080715-10 84692
刚输出的应该是6

最好是如果在text2中输入1,就查找的是最后一个数字
如果在text2中输入2,就查找的是倒数第二个数

现在只有这点分了,我会去挣的。一定会加分的
不是这样的。我是要对比相同的。

需要textbox两个,cmdbutton一个,其中文本属性设置带滚动条哦,把你的文本粘贴到第一个文本框,第二个显示结果

Private Sub Command1_Click()
Dim a()
Dim s, m, n, c, x, t, l, v
Text2.Text = ""
s = (Text1.Text)
m = Split(s, vbCrLf)
For i = LBound(m) To UBound(m)
n = Right(Trim(m(i)), 1)
x = x & n
Next
x = StrReverse(x)
Text2.Text = x
c = InputBox("请输入要查找的字符")
c = StrReverse(c)
t = InStr(x, c)
If t = 0 Then
MsgBox "没找到"
ElseIf c = "" Then
Exit Sub
Else
v = Mid(x, Val(t - 1), 1)
End If
Text2.Text = v
End Sub

有修改了一下,消除几个bug,初学者水平一般,程序不严谨,抱歉

从你的问题来看,你的数据只有每行的最后一个数字有用你再试试下面的代码
textbox 2个,作用如你的描述,commandbutton一个:
dim n,m,l,i,j,s
n=val(text2.text)
fn=freefile()
open "D:\BonusNumber.txt" for input as fn
do while not eof(fn)
line input #fn,x 'x用来接受每一行的内容
s=right(trim(x)) & s 's用来保存所有行最后一个数字组成的字符串——