2011-11-23 130 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