'最初的测试程序1
Public Sub writefile()
Open "d://example3.txt" For Output As #1
Print #1, "这是一个示例"
Print #1, '写入一个空行
Print #1, "同学,"; " "; "你好!"
Close #1
End Sub
'最初的测试程序2
Public Function test() As Integer
Dim cnn As ADODB.Connection
Dim rstC As ADODB.Recordset
Set cnn = New ADODB.Connection
Dim temp As String
'改进:让用户自己选择路径
cnn.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://firstdb.mdb"
Set rstC = New ADODB.Recordset
With rstC
Set .ActiveConnection = cnn
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
'.MaxRecords = 2
.Open "select * from tangdb"
End With
'关键是:怎样把从本地读出的文件中的字段中的值对应的放进html的table中,函数该返回怎样的值
test = rstC.recordCount
End Function
'----------------------------------------------------------------------------
'(1)导入本地试验一:
'需要引入的有:Microsoft ADO Ext 2.1. For DDL Security and Microsoft ActiveX Data Objects 2.5 Library以上
Public Sub Command1_Click1()
'首先,从html table中提取出表头(传为参数)(no)
'在本地新建一个mdb文件,各字段为表头(ok)
'打开mdb文件,循环写入表体数据(ok)
Dim cat As New ADOX.Catalog
Dim rs As New ADODB.Recordset
Dim conn As New ADODB.Connection
' pstr = "Provider=Microsoft.Jet.OLEDB.4.0;" '不能把这里的4.0改为3.51
pstr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://firstdb.mdb" '!还要改进,让用户自己选择存在本地的路径
cat.Create pstr '创建数据库
Dim tbl As New Table
cat.ActiveConnection = pstr
tbl.Name = "tangdb" '表的名称
tbl.Columns.Append "编号", adInteger '表的第一个字段
tbl.Columns.Append "姓名", adVarWChar, 8 '表的第二个字段
tbl.Columns.Append "住址", adVarWChar, 50 '表的第三个字段
cat.Tables.Append tbl '建立数据表
conn.Open pstr
rs.CursorLocation = adUseClient
rs.Open "tangdb", conn, adOpenKeyset, adLockPessimistic
rs.AddNew '往表中添加新记录
'插值
rs.Fields(0).Value = 1
rs.Fields(1).Value = "唐辉天"
rs.Fields(2).Value = "低低地"
rs.Update
End Sub
'----------------------------------------------------------------------------------
' '(1)导入本地试验2:
'需要引入的有:Microsoft ADO Ext 2.1. For DDL Security and Microsoft ActiveX Data Objects 2.5 Library以上
Public Sub Command1_Click3(recordCount As Integer)
'首先,从html table中提取出表头(传为参数)(no)
'在本地新建一个mdb文件,各字段为表头(ok)
'打开mdb文件,循环写入表体数据(ok)
Dim cat As New ADOX.Catalog
Dim rs As New ADODB.Recordset
Dim conn As New ADODB.Connection
Dim i As Integer
' pstr = "Provider=Microsoft.Jet.OLEDB.4.0;" '不能把这里的4.0改为3.51
pstr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://firstdb.mdb" '!还要改进,让用户自己选择存在本地的路径
cat.Create pstr '创建数据库
Dim tbl As New Table
cat.ActiveConnection = pstr
tbl.Name = "tangdb" '表的名称
tbl.Columns.Append "编号", adInteger '表的第一个字段
tbl.Columns.Append "姓名", adVarWChar, 8 '表的第二个字段
tbl.Columns.Append "住址", adVarWChar, 50 '表的第三个字段
cat.Tables.Append tbl '建立数据表
conn.Open pstr
rs.CursorLocation = adUseClient
rs.Open "tangdb", conn, adOpenKeyset, adLockPessimistic
For i = 0 To recordCount
rs.AddNew '往表中添加新记录
'插值
rs.Fields(0).Value = i
rs.Fields(1).Value = "唐辉天"
rs.Fields(2).Value = "tetdmis"
rs.Update
rs.MoveNext
Next i
End Sub
'-----------------------------------------------------------------------
Public Sub Command1_Click2(ParamArray tablevalue() As Variant)
'首先,从html table中提取出表头(传为参数)(no)
'在本地新建一个mdb文件,各字段为表头(ok)
'打开mdb文件,循环写入表体数据(ok)
Dim cat As New ADOX.Catalog
Dim rs As New ADODB.Recordset
Dim conn As New ADODB.Connection
Dim i As Integer
' pstr = "Provider=Microsoft.Jet.OLEDB.4.0;" '不能把这里的4.0改为3.51
pstr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://firstdb.mdb" '!还要改进,让用户自己选择存在本地的路径
cat.Create pstr '创建数据库
Dim tbl As New Table
cat.ActiveConnection = pstr
tbl.Name = "tangdb" '表的名称
tbl.Columns.Append "编号", adInteger '表的第一个字段
tbl.Columns.Append "姓名", adVarWChar, 8 '表的第二个字段
tbl.Columns.Append "住址", adVarWChar, 50 '表的第三个字段
cat.Tables.Append tbl '建立数据表
conn.Open pstr
rs.CursorLocation = adUseClient
rs.Open "tangdb", conn, adOpenKeyset, adLockPessimistic
'rs.MoveFirst
rs.AddNew '往表中添加新记录
'插值
rs.Fields(0).Value = 1
rs.Fields(1).Value = para
rs.Fields(2).Value = "tetdmis"
rs.Update
For intI = 0 To UBound(tablevalue())
'Debug.Print " "; intScores(intI)
Next intI
End Sub
'-------------------------------------------------------------------------------------
'ParamArray tablevalue() As Variant 数组作函数参数
Public Function vividtang(temp As String) As String
'通过前台的javascript传过来的是带有";"的String,用Split函数把string 装到数组中,Join可以把数组串成string
Dim str1() As String
str1 = Split(temp, ",")
vividtang = Join(str1)
End Function
'将一维数组变成多维数组
Public Function vivid2(temp As String) As String
'通过前台的javascript传过来的是带有";"的String,用Split函数把string 装到数组中,Join可以把数组串成string
'数组的上限为ubound(数组名)
Dim str1() As String
str1 = Split(temp, ",")
'vb中for 中的i每个都取到的
'怎样把一维数组构造成多维数组,为数作为参数传进来
Dim str2(0 To 2, 0 To 1) As String
Dim p As Integer
p = 0
For k = 0 To 2
For g = 0 To 1
str2(k, g) = str1(p)
p = p + 1
Next g
Next k
vivid2 = str2(1, 1)
End Function
'-----------------------------------------------------------------------------------------------
'*********************************将前台html table中的数据提取出来导入本地 mdb文件中**********************************************'
Public Sub vivid(temp As String, ByVal rowlen As Integer, ByVal collen As Integer)
'通过前台的javascript传过来的是带有";"的String,用Split函数把string 装到数组中,Join可以把数组串成string
'数组的上限为ubound(数组名)
Dim str1() As String
str1 = Split(temp, ",")
'vb中for 中的i每个都取到的
'怎样把一维数组构造成多维数组,为数作为参数传进来
'开始我把数组定义成了固定数组,这样无法把传来的参数设为数组的维数
Dim str2(0 To 2, 0 To 1) As String
'Dim p As Integer
'p = 0
'For k = 0 To 2
'For g = 0 To 1
'str2(k, g) = str1(p)
'p = p + 1
'Next g
' Next k
'改用动态数组-----------------------------------------------------------------------
Dim str3() As String
Dim p As Integer
p = 0
For k = 0 To rowlen - 1
For g = 0 To collen - 1
str2(k, g) = str1(p)
p = p + 1
Next g
Next k
'在本地生成表,生成表头---------------------------------------------------------------
Dim cat As New ADOX.Catalog
Dim rs As New ADODB.Recordset
Dim conn As New ADODB.Connection
Dim i As Integer
' pstr = "Provider=Microsoft.Jet.OLEDB.4.0;" '不能把这里的4.0改为3.51
pstr = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://tang2.mdb" '!还要改进,让用户自己选择存在本地的路径
'--------------------------------------------------------------------------------
cat.Create pstr '创建数据库
Dim tbl As New Table
cat.ActiveConnection = pstr
tbl.Name = "tangdb" '表的名称
' tbl.Columns.Append str2(0, 0), adInteger '表的第一个字段
tbl.Columns.Append str2(0, 0), adVarWChar, 8 '表的第二个字段
tbl.Columns.Append str2(0, 1), adVarWChar, 8 '表的第三个字段
cat.Tables.Append tbl '建立数据表
conn.Open pstr
rs.CursorLocation = adUseClient
rs.Open "tangdb", conn, adOpenKeyset, adLockPessimistic
'往表中添加新记录---------------------------------------------------
For g2 = 1 To rowlen - 1
rs.AddNew
'插值
For g1 = 0 To collen - 1
rs.Fields(g1).Value = str2(g2, g1)
Next g1
rs.Update
rs.MoveNext
Next g2
'---------------------------------------------------------------------
End Sub
'************************************************************************************************************'
'-----------------------------------------------------------------------------------
'(2)从本地导出程序部分
Public Function test2() As Integer
Dim cnn As ADODB.Connection
Dim rstC As ADODB.Recordset
Set cnn = New ADODB.Connection
Dim temp As String
'改进:让用户自己选择路径
cnn.Open "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=d://firstdb.mdb"
Set rstC = New ADODB.Recordset
With rstC
Set .ActiveConnection = cnn
.CursorLocation = adUseClient
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
'.MaxRecords = 2
.Open "select * from tangdb"
End With
'关键是:怎样把从本地读出的文件中的字段中的值对应的放进html的table中,写成过程
test2 = 1
End Function
'(3)把html页面上的数据写入到excel中的实验,试验成功,表明只要传的参数为innerHTML,就可以到处为excel
'思路:在本地创建.xls文件-----〉把innerHTML写入该文件
Public Sub writefile2()
Open "d://tangexcel.xls" For Output As #1
Print #1, "<html><body ><table border=1><tr><td width=50>11</td><td width=50>12</td><td width=50>13</td></tr><tr><td width=50>21</td><td width=50>22</td><td width=50>23</td></tr></table></body></html>"
Close #1
End Sub