2011-11-23 96 views
1

我是在单张纸上创建多个图表。比方说,我有一张“Sheet 1”表,在这张表上我创建了10个图表,名称从“图表1”到“图表10”。但问题是当我点击名称框时,所有图表的列表在该名称框中不可用。 任何人都可以帮助我通过简单的Excel或Excel VBA如何做到这一点。名称框中的Excel图表名称

回答

2

更新:我不相信它的范围名称或当前选择的对象以外的任何其他在“名称”框中可用。我见过的唯一改变是对名称框的增加

在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 
+0

是的我想要功能来选择它们,就像它发生在命名范围的情况下一样。 – CuriousCase

+0

,但这段代码将在msg框中显示名称。我希望它们在名称框中,即任何表单中“A1”单元格上方的框。 – CuriousCase

1

下面的宏输出更多有关工作簿和工作表中的图表比brettdj's更多的信息。这个想法是让您更全面地了解可用信息以及访问方式。

但是,我不明白你想要在名称框中出现什么。

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 
+1

由于neha在我的初始文章之下明确表达了这个问题,所以想要将图表名称添加到名称框中,以便可以直接从下拉列表中选择图表....但OI不相信这是可能的。另外,这个问题没有要求详细的图表信息 - 这是一个名称列表 – brettdj

+0

我同意,@ brettdj,neha没有要求我给的细节,但我有太多的客户要求他们认为可能是可能的,而不是他们想要的。如果neha只需要一个下拉列表,带有快捷键的小宏似乎是一个简单的解决方案。但是,我很少看到有用名字的图表;因此我展示了如何访问其他属性,如标题,这对用户可能更有意义。 –

0

如果您有Excel 2007及更高版本,有选择和显示的窗口,你可以激活。

看到这一点,

1) insert ANY shape on your sheet 

2) **Format > Arrange > Selection Pane** 

可以,在这一点上,右键单击选择窗格中的图标并将其添加到您的QAT。使用QAT上的图标,意味着可以随时激活选择和可见性窗口,在纸张上有或没有形状。

+0

但我想名称框中的名称,不想去选择窗格。 – CuriousCase

+0

@Neha,我之前已经发布了Selection Pane提案作为我编辑帖子中名称框的替代。我不认为有可能将它们添加到名称框中。 – brettdj

+0

@ brettdj,谢谢你的回答。 – CuriousCase