excel - 更改数据透视图的标题
问题描述
如何让我的数据透视图的标题更改和显示。伪代码如下:
Dim PCache As PivotCache
Dim PTable As PivotTable
Dim PRange As Range
Dim PChart As ChartObject
lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row + 3
'Set data range
Set PRange = .Cells(1, 1).Resize(lastRow - 3, 11)
Set PCache = wb2.PivotCaches.Create _
(SourceType:=xlDatabase, SourceData:=PRange)
Set PTable = PCache.CreatePivotTable(TableDestination:=.Cells(lastRow, 6), _
TableName:="VarietyByTerritoryTable")
这是按预期工作的。该lastRow
变量很挑剔,但可以完成工作。这一切都在一个With
块中。在此之后我有一些代码将字段添加到 PTable 但正在工作,所以我选择省略。
现在我创建图表。创建图表有效,我只是无法显示标题。
Set PChart = wb2.Sheets(1).ChartObjects.Add(300, 200, 550, 200)
With PChart
.Chart.SetSourceData PTable.TableRange2
.Chart.ChartType = xlAreaStacked
.Name = "Territory"
.SetElement (msoElementChartTitleAboveChart)
.ChartTitle.Text = strVar & " in " & strTerr
End With
错误显示.SetElement()
在行中。
附加问题:
a) 中的数字是.ChartObjects.Add(##, ##, ###, ##)
做什么的?他们改变了我假设的位置。最后两个处理图表的大小吗?
b) 我可以将图表的标题设置为 TableName 中的名称Set PTable = PCache.CreatePivotTable(TableDestination:=.Cells(lastRow, 6), _
TableName:="VarietyByTerritoryTable")
吗?如果是这样,我可以在 TableName 部分有空格吗?(即更改为TableName := "Variety By Territory"
)
c) 相同的问题,但使用PChart.Name
. 我可以把这个标题去掉吗?如果可以,我应该避免使用空格吗?
解决方案
你错过了
.Chart
你的SetElement
行。所以试试这个:.Chart.SetElement (msoElementChartTitleAboveChart) .Chart.ChartTitle.Text = strVar & " in " & strTerr
你是对
ChartObjects Method
的,最后 2 个值是指宽度和高度。您当然可以使图表名称与表名称相同,是的,数据透视表名称中允许使用空格。
图表标题也一样,空格也可以。
推荐阅读
- java - 无法使用新版本的 android studio 模拟器运行 android 项目
- angular - 从数组构建表单控件 - Angular 4
- python - 调用函数时的 Jupyter Notebook NameError
- angular - 如何在角度中使用单个布尔变量并在不同字段中动态使用
- javascript - React Native 中获取后的条件渲染
- eclipse - Eclipse中的jstl验证错误
- java - 即使索引 < 大小,JTable RowSorter 也会抛出 IndexOutOfBoundException
- node.js - graphql 是否自动执行猫鼬查询?
- sharepoint-online - SharePoint 网站未编入索引
- php - 如何通过 Anspress 保存自定义字段