尝试使用vba在另一个工作表中创建数据范围为的透视表时,类型不匹配
您好当尝试创建数据透视表时,数据源被设置为不同工作表中的一个范围,根据我试图为源数据声明范围的方式,我经常遇到类型不匹配或1004错误。下面是我的代码,有人对如何正确设置我的范围有什么想法吗,这样这个方法就可以工作了,或者我应该使用不同的方法来创建表吗尝试使用vba在另一个工作表中创建数据范围为的透视表时,类型不匹配,vba,excel,Vba,Excel,您好当尝试创建数据透视表时,数据源被设置为不同工作表中的一个范围,根据我试图为源数据声明范围的方式,我经常遇到类型不匹配或1004错误。下面是我的代码,有人对如何正确设置我的范围有什么想法吗,这样这个方法就可以工作了,或者我应该使用不同的方法来创建表吗 Worksheets.Add.Name = sheetName rowCount = CStr(Sheets(sourceName).UsedRange.Rows.Count) Set rng = ThisWorkbook.Worksheet
Worksheets.Add.Name = sheetName
rowCount = CStr(Sheets(sourceName).UsedRange.Rows.Count)
Set rng = ThisWorkbook.Worksheets(sourceName).Range("A1:W" & rowCount)
'Create the Pivot Cache and Table
Set objCache = ActiveWorkbook.PivotCaches.Create(xlDatabase, SourceData:=rng)
Set objTable = objCache.CreatePivotTable(TableDestination:=ActiveWorkbook.Worksheets(sourceName).Range("A1"))
尝试将整个范围放在一个字符串中:
Worksheets.Add.Name = sheetName
rowCount = Cstr(Sheets(sourceName).UsedRange.Rows.Count)
rowCount = "A1:W" & rowCount
Set rng = ThisWorkbook.Worksheets(sourceName).Range(rowCount)
'Create the Pivot Cache and Table
Set objCache = ActiveWorkbook.PivotCaches.Create(xlDatabase, SourceData:=rng)
Set objTable = objCache.CreatePivotTable(TableDestination:=ActiveWorkbook.Worksheets(sourceName).Range("A1"))
将此标记为答案,因为它确实解决了该问题,但是我现在遇到了一个新问题和一个运行时错误1004数据透视表字段名无效