VBA常用代码

Application.Calculation = xlCalculationManual '手动计算
Application.Calculation = xlCalculationAutomatic '自动计算
Application.ScreenUpdating = False '关闭屏幕刷新
Application.DisplayAlerts = False '禁止弹出提示框
Application.EnableEvents = False '禁止事件
Application.CutCopyMode = False'退出复制/剪切模式
Application.ActivateMicrosoftApp Index:=0'使用Windows的计算器
Application.Dialogs(xlDialogOpen).Show'显示内置对话框
Sub search1()
Dim cnn As Object, sql$, rs As Object, i
Set cnn = CreateObject("adodb.connection") '建立连接对象
Set rs = CreateObject("ADODB.recordset")
cnn.Open "Provider=Microsoft.jet.Oledb.4.0;Extended Properties='text;hdr=no';Data Source=" & ThisWorkbook.Path & "" '打开数据库
sql = "select * from SurveyPoint_1.txt" 'SQL规则
Range("a1").CurrentRegion.ClearContents
rs.Open sql, cnn, 3, 1 '执行SQL语句
Range("a2").CopyFromRecordset rs '复制数据
cnn.Close
Set rs = Nothing
Set cnn = Nothing
End Sub
从上面代码看和普通的SQL取数据没有太多区别,只不过这里Data Source是一个文件夹路径,该路径下的所有txt文件都被当成一个表来处理。例子中假设的是没有表头。这里是取所有数据,如果你只取其中几列可以,比如第3列可以写成 "select f3 from SurveyPoint_1.txt" 。

posted @ 2019-10-18 00:26  zhujie-  阅读(1031)  评论(0编辑  收藏  举报