|
这个要求用SQL实现的象征意义大于实际意义……- Sub GetSums()
- Dim Cn As Object, strSql$
-
- Set Cn = CreateObject("Adodb.Connection")
- Cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties='Excel 8.0;Imex=1';Data Source=" & ThisWorkbook.FullName
-
- strSql = "(Select 年级 As A,班级 As B,SUM(分数) As C,'1' As D From [Sheet1$A1:C] " _
- & "Group By 年级,班级 Union Select 年级 As A,'小计' As B,SUM(分数) As C,'1' As D From [Sheet1$A1:C] " _
- & "Group By 年级 Union Select '总计' As A,'' As B,SUM(分数) As C,'2' As D From [Sheet1$A1:C]) A "
- strSql = "Select a.A,a.B,a.C From " & strSql _
- & "Order By a.D,a.A,a.B Desc"
- [E2].CopyFromRecordset Cn.Execute(strSql)
- Cn.Close: Set Cn = Nothing
- End Sub
复制代码 |
|