excel - Excel VBA - 从表格主体范围添加数据标签
问题描述
我有一个 Excel 工作表,其中包含项目名称、x、y、大小列,以便创建气泡图。
我希望它将数据标签更改为等于相应的项目名称,但我该怎么做?我在网上搜索了解决方案,但都没有成功。
这是我的数据:
- 图表名称:图表1
- 表名:表(这个有标题,我只搜索表内的范围(数据主体范围)。
这是我的代码,它给了我错误 91:
Sub InsertLabelnameBubble()
ActiveChart.FullSeriesCollection(1).DataLabels.Select
For i = 1 To Range("Table").Rows.Count
ActiveChart.FullSeriesCollection(1).Points(i).DataLabel.Select
Selection.Formula = Range("Table").Cells(i, 1)
Next i
End Sub
这是我的项目的屏幕截图。
您可以在其中看到它使用 Y 列(预期项目潜力)作为数据标签文本。我想做的是它应该从我的表(项目#)的第一列中获取它。
解决方案
这是我用于某个范围内的数据标签的代码。不久前在stackoverflow上发现了这个:
Sub DataLables
Dim ws as worksheet, DataLR As Series, pts As Points, pt As Point, rngLabels As Range, IDi As Integer, ChtObj As ChartObject
Set ws = ActiveWorkbook.ActiveSheet
With ws
Set ChtObj = .ChartObjects("ChatName")
Set rngLabels = .Range("A5:A39")
Set DataLR = ChtObj.Chart.SeriesCollection(2)
DataLR.HasDataLabels = True
For Each pt In pts
IDi = IDi + 1
pt.DataLabel.Text = rngLabels.Cells(IDi).Text
pt.DataLabel.Font.Bold = True
Next pt
End With
End Sub
让我知道这是否有帮助。它将使用范围内的值更新数据标签。
推荐阅读
- amazon-web-services - “s3:PutObject*”和“s3:PutObject”有什么区别?
- node.js - 如何从另一个调用同一个对话框的对话框中调用一个对话框?
- javascript - 嵌套数组不会在 Vue3 模板中呈现
- python - 为什么我无法重现 Keras 结果?
- javascript - jQuery无法添加元素
- amazon-web-services - 如何在 AWS OpenSearch 上创建可视化?
- c# - OnTriggerEnter 带标签
- ansible - 每小时运行 ansible playbook 的 Cron 作业
- r-markdown - 尝试使用 Rstudio 在 RMarkdown 中编织时出现 system.file() 错误
- java - 用于 Java 自由格式项目的 NetBeans 运行重点测试方法