2016-03-02 141 views
0

我试着分析Excel如何从选择中创建数据透视表。看起来很简单。我在文档中选择整个范围,然后按该范围创建数据透视表。这将产生以下代码:如何使用VBA,Excel中的选择创建数据透视表

Range(Selection, Selection.End(xlDown)).Select 
Range(Selection, Selection.End(xlToRight)).Select 
Sheets.Add 
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ 
    "Keyword report!R2C1:R643841C25", Version:=xlPivotTableVersion15). _ 
    CreatePivotTable TableDestination:="Sheet38!R3C1", TableName:="PivotTable2" _ 
    , DefaultVersion:=xlPivotTableVersion15 

我想在未来使用这个代码,但不是采用固定的参考特定的范围内,我希望Excel从选择得出的数据。出于某种原因,这不包括在宏记录中。我不知道“R2C1:R643841C25”是什么或它是如何派生的。我的选择是:A1:Y643841。

最大的问题是:如何将代码中的R2C1:R643841C25替换为“Selection”?

+0

请将此作为回答,我想给你最好的答案。 :) –

+1

删除并添加为答案 –

回答

1

了解R1C1 notation会帮助您回答这个问题。

+0

它确实。现在我只需要弄清楚如何将这些信息传递给PivotCaches.Create。应该很容易。 :) –