“名称”框中的Excel图表名称
我在一张纸上创作了多张图表。假设我有一张“表1”,在这张表上我创建了10个图表,名称从“图1”到“图10”。但问题是,当我单击“名称”框时,该名称框中没有所有图表的列表。“名称”框中的Excel图表名称,excel,vba,Excel,Vba,我在一张纸上创作了多张图表。假设我有一张“表1”,在这张表上我创建了10个图表,名称从“图1”到“图10”。但问题是,当我单击“名称”框时,该名称框中没有所有图表的列表。 任何人都可以通过简单的excel或excel VBA帮助我实现这一点。更新:我不相信“名称框”中除了范围名称或当前选择的对象之外还有其他内容。我所见过的唯一对名称框所做的修改是增加了宽度 在Xl2010中,您可以使用选择窗格查看所有图表 家。。。。编辑。。。。查找并选择。。。。选择窗格 原创 像这样的东西会给你一张清单 您想要
任何人都可以通过简单的excel或excel VBA帮助我实现这一点。更新:我不相信“名称框”中除了范围名称或当前选择的对象之外还有其他内容。我所见过的唯一对名称框所做的修改是增加了宽度 在Xl2010中,您可以使用选择窗格查看所有图表 家。。。。编辑。。。。查找并选择。。。。选择窗格 原创 像这样的东西会给你一张清单 您想要从列表中选择并激活图表的功能,还是只需要列表本身
Sub GetCharts()
Dim chr As ChartObject
Dim strOut As String
For Each chr In Sheets(1).ChartObjects
strOut = strOut & chr.Name & vbNewLine
Next
If Len(strOut) > 0 Then
MsgBox "Chart Names are:" & vbNewLine & strOut
Else
MsgBox "No charts", vbCritical
End If
End Sub
下面的宏输出的有关工作簿和工作表中图表的信息比brettdj的更多。这样做的目的是让您更全面地了解可用的信息以及如何访问这些信息 但是,我不明白您希望在“名称”框中显示什么
Sub Test1()
Dim InxCO As Integer
Dim InxWS As Integer
For InxWS = 1 To Worksheets.Count
With Sheets(InxWS)
Debug.Print "Worksheet: " & .Name
Debug.Print " " & .ChartObjects.Count & " charts"
For InxCO = 1 To .ChartObjects.Count
With .ChartObjects(InxCO)
Debug.Print " Chart: " & .Name
Debug.Print " Location: " & .TopLeftCell.Address & " to " & _
.BottomRightCell.Address
If .Chart.HasTitle Then
Debug.Print " Title: " & .Chart.ChartTitle.Text
Else
Debug.Print " Untitled"
End If
End With
Next
End With
Next
End Sub
如果您有Excel 2007+,则可以激活一个选择和可见性窗口 看到这个,
1) insert ANY shape on your sheet
2) **Format > Arrange > Selection Pane**
此时,您可以右键单击选择窗格图标并将其添加到QAT中。使用QAT上的图标,意味着可以随时激活选择和可见性窗口,工作表上有形状或没有形状。是的,我希望功能可以像在命名范围中一样选择它们。但此代码将在消息框中显示名称。我希望它们位于名称框中,即“A1”上方的框中任何表格中的单元格。正如neha在我最初的帖子下面明确指出的,问题是要将图表名称添加到名称框中,以便可以直接从下拉列表中选择图表。。。。但我不相信这是可能的。另外,这个问题并没有要求提供详细的图表信息,而是要求提供一个名称列表,我同意@brettdj,neha没有要求提供我提供的详细信息,但我有太多的客户要求他们认为可能的,而不是他们想要的。如果neha只需要一个下拉列表,那么一个带有快捷键的小宏似乎是一个简单的解决方案。然而,我很少看到有有用名称的图表;因此,我展示了如何访问其他属性,例如标题,这对用户来说可能更有意义。但我想在“名称”框中输入名称,不想进入“选择窗格”。@Neha,我之前在编辑过的帖子中发布了“选择窗格”方案,以替换“名称”框。我认为不可能将它们添加到名称框中。