VB问题请教,内详

来源:百度知道 编辑:UC知道 时间:2024/07/01 04:44:57
名字:张1 性别:男 身高:1.7 年龄:10
名字:张2 性别:男 身高:1.7 年龄:30
名字:张3 性别:男 身高:1.7 年龄:20
名字:张4 性别:男 身高:1.7 年龄:40
名字:张5 性别:男 身高:1.7 年龄:50
........................................
有几万条上面这样的信息,如果手动去把年龄30以上的选出来,十分麻烦,在VB里可以实现快速分类吗?可以的话,代码应该怎么写?请赐教
首先感谢大家的帮助,用了3楼的代码,但还有点小问题
Private Sub Form_Load()
Dim Fso As FileSystemObject
Dim New_File As TextStream
Dim Load_File As TextStream
Dim str As String
Dim I As Integer
Set Fso = New FileSystemObject

Set New_File = Fso.CreateTextFile(Path, True)
Set Load_File = Fso.OpenTextFile("F:\所有压缩文件\10203\新建文件夹\29.txt")
While Not Load_File.AtEndOfLine
str = Load_File.ReadLine
I = Mid(str, InStr(str, "年龄:") + 1, 2)
If I > 30 Then
New_File.WriteLine str
Else
End If
Wend
Load_File.Close
New_File.Close
End Sub
---------------------------------------------------------

这个东西应该是在TXT文件里吧。
如果在SQL表中可以用语句做:select * from 表名 where 年龄>'30'
如果有SQL SEVER,可以把文件导入数据库里,然后再导出来。
用VB做是这样的思路:
1、新建一个TXT文件。
2、打开上面有记录的文件。
3、逐行读出,判断是否年龄>30
4、把小于30的写入新文件中。
5、新文件就是你想要的数据了。上面写入就已经保存了,这里可以直接退出!
代码:工程--引用--microsoft scripting runtime
Dim Fso As FileSystemObject
Dim New_File As TextStream
Dim Load_File As TextStream
Dim str As String
Dim I As interger
Set Fso = New FileSystemObject
Set New_File = Fso.CreateTextFile(path, True)
Set Load_File = Fso.OpenTextFile(文件路径)
While Not Load_File.AtEndOfLine
str = Load_File.ReadLine
I=mid(str,instr(str,"年龄:")+1,2)
if i>30 then
New_File.WriteLine str
else
end if
Wend
Load_File.Close
New_File.Close

这些数据都很有规律,最好的是把这些数据先导入到数据库(Access/Excel等等),然后简单一条SQL查询就可以搞定了

为什么不用Excel呢,Excel很容易就可以分开了啊