今天看了个帖子,VBS脚本怎样对EXCEL排序,我回复了2个方法,感觉可能对大家有用,所以把回复的内容独立出来,希望对大家有所帮助,谢谢!(原帖连接:http://bbs.51testing.com/viewthread.php?tid=280755&extra=page%3D1%26amp%3Bfilter%3Dtype%26amp%3Btypeid%3D12) 一、创建ADO对象,把EXCEL当作数据库对EXCEL中数据进行(增、删、改、查)
具体代码如下(若想对EXCEL进行增、删、改、查,修改红色部分的SQL语句即可):
'以下代码是按username 倒序输出username,password
filepath="D:\test.xls" '这里输入EXCEL的实际路径
Set conn= createobject("ADODB.Connection") '创建ADO对象
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&filepath&";Extended Properties=Excel 8.0" 'ADO连接字符串8.0为EXCEL97-2003
Set rs=CreateObject("ADODB.Recordset") '创建记录集
rs.Open "Select username,password from [Sheet1$] order by username desc",conn '这里的SQL语句与SQL中的区别是表名后要加个美圆符号$
Do
If not rs.eof Then
username=rs("username")
password=rs("password")
print "username:"&username&" password:"&password
rs.MoveNext
else
msgbox "没有记录"
End If
loop until rs.eof=true
conn.close
Set rs=nothing
Set conn = nothing
'修改EXCEL数据:
filepath="D:\test.xls"
Set conn= createobject("ADODB.Connection")
conn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&filepath&";Extended Properties=Excel 8.0"
Set rs=CreateObject("ADODB.Recordset")
rs.Open "update [Sheet1$] set username='修改后内容' where username='finger07'",conn
conn.close
Set rs=nothing
Set conn = nothing
If not rs.eof Then
username=rs("username")
password=rs("password")
print "username:"&username&" password:"&password
rs.MoveNext
else
msgbox "没有记录"
End If
这个地方的判断语句是什么意思,是打开的文件不为空,然后进行的赋值?作者: 819longjiayan 时间: 2011-7-21 15:02
呵呵,读完了,但是其中有地方没明白。
If not rs.eof Then
username=rs("username")
password=rs("password")
print "username:"&username&" password:"&password
rs.MoveNext
else
msgbox "没有记录"
End If
这个地方的判断语句是什么意思,是打开的文件不为空,然后进行的赋值?作者: 819longjiayan 时间: 2011-7-21 15:04
还有对excel录制宏的步骤没明白