我有一列日期和一列项目。
大家好 我想计算特定日期的项目数量,每天有多少项目。 第1栏日期 - 第2栏 - 项目
01.09.2009 IT004
01.09.2009 IT004
01.09.2009 IT005
01.09.2009 IT006
01.09.2009 IT006
01.09.2009 IT006
06.09.2009 IT004
06.09.2009 IT004
06.09.2009 IT005
07.09.2009 IT004
07.09.2009 IT005
07.09.2009 IT005
07.09.2009 IT006
01.09.2009 06.09.2009 07.09.2009
For It004 2 2 1
For It005 1 1 2
For It006 3 0 1
非常感谢任何帮助,并提前多多感谢。
阿塔纳斯
答案 0 :(得分:1)
如果这是表格的全部内容,那么这应该有效:
SELECT datecol, count(*) FROM table GROUP BY datecol
答案 1 :(得分:0)
您可以使用数据透视表执行此操作。
将项目用作行字段。
使用日期作为列和数据字段(日期计数)。
使用VBA
假设Items和Date位于单元格A1中的工作表“Sheet1”中,则在工作表“Sheet2”中创建数据透视表,从活动工作簿中的单元格A3开始。
Sub createPivotTableReport()
Set wsData = ActiveWorkbook.Worksheets("Sheet1")
Set wsReport = ActiveWorkbook.Worksheets("Sheet2")
Set rngData = wsData.UsedRange
Set rngReport = wsReport.Range("a3")
Set pvtCache = ActiveWorkbook.PivotCaches.Add(xlDatabase, rngData.Address(True, True, 1, True))
Set pvtTable = pvtCache.CreatePivotTable(rngReport)
pvtFieldsRow = Array("Items")
pvtFieldsCol = Array("Date")
pvtTable.AddFields pvtFieldsRow, pvtFieldsCol
pvtTable.PivotFields("Date").Orientation = xlDataField
End Sub
注意:强>
在某些(较新?)版本的Excel中,行
Set pvtCache = ActiveWorkbook.PivotCaches.Add(xlDatabase, rngData.Address(True, True, 1, True))
可以更改为
Set pvtCache = ActiveWorkbook.PivotCaches.Add(xlDatabase, rngData)
或者我的旧版Excel可能很糟糕。我不知道。
我还在这里发布了一个.vbs解决方案:
http://gallery.technet.microsoft.com/ScriptCenter/en-us/dde1e5e2-f5f6-4053-84fb-b820f01f1fdf
答案 2 :(得分:0)
如何使用Excel的DCOUNTA功能?有两个表,其中顶部表是DSUM函数的标准。
EX)
Date Items
01.09.2009 IT004
Date Items
01.09.2009 IT004
01.09.2009 IT004
01.09.2009 IT005
因此,在底部表格下方的一行上,您将放置DCOUNTA功能:
=DCOUNTA(A3:B6,"items",A1:B2)
首先寻找内置功能:)