Function MysqlDictTwoCeng_BIG()
On Error Resume Next
Dim cnn As Object, rst As Object
Dim strPath As String, str_cnn As String, strSQL As String
Dim i As Long
Set cnn = CreateObject("adodb.connection")
'以上是第一步,后期绑定ADO
strPath = ThisWorkbook.FullName
'‘设置当前工作簿为数据源
If Application.Version < 12 Then
str_cnn = "Provider=Microsoft.jet.OLEDB.4.0;Extended Properties=Excel 8.0;Data Source=" & strPath
Else
str_cnn = "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=Excel 12.0;Data Source=" & strPath
End If
cnn.Open str_cnn
'以上是第二步,建立链接
strSQL = "SELECT [Title 1],title2,SUM([value 1]),SUM(value2), FROM [Sheet1$C1:T100] group by [Title 1],title2"
Set rst = cnn.Execute(strSQL)
'创建一个字典存放我们SQL的数据
Dim dictResults As Object
Set dictResults = CreateObject("Scripting.Dictionary")
While Not rst.EOF
strKey = rst.Fields(0).value & rst.Fields(1).value
strvalue = rst.Fields(2).value & rst.Fields(3).value
' 将键和值存入字典
dictResults.Add strKey, strvalue
rst.movenext
Wend
Set MysqlDictTwoCeng_BIG = dictResults
cnn.Close '关闭链接
Set cnn = Nothing '释放内存
On Error GoTo 0
End Function
注意:
1.对于有空格或者特殊字段的值要用[]包括,例如[Title 1]
2. [Sheet1$C1:T100]范围一定要包含组合的字段即表头