Поиск всех sparklines на листе

В следующем примере кода для отображения всех групп sparkline на активном листе используется поле списка в форме пользователя. При нажатии одной из групп sparkline в поле списка на листе выбирается группа sparkline.

В этом примере требуется форма пользователя с именем SparklineForm, поле списка в форме пользователя с именем SparklineListBox и кнопка в форме пользователя с именем CloseBtn.

В редакторе Visual Basic вставьте модуль и скопируйте и вставьте следующий код. В этом коде показана форма пользователя.

Sub ShowUserForm()
    SparklineForm.Show
End Sub

В редакторе Visual Basic щелкните правой кнопкой мыши форму SparklineForm, выберите Код представления и скопируйте и вклеите следующий код. Процедура UserForm_Activate итерирует все группы sparkline на активном листе и получает адреса групп sparkline с помощью свойства Address объекта Range . Затем адрес добавляется в поле списка. Процедура SparklineListBox_Click вызывается при нажатии адреса группы sparkline в поле списка. Эта процедура активирует выбранную группу sparkline на листе с помощью метода Активация объекта Range . Процедура CloseBtn_Click называется при нажатии кнопки на форме пользователя и закрывает форму пользователя.

Private Sub UserForm_Activate()
    'The sparkline group
    Dim oSparkGroup As SparklineGroup
    
    'Loop through all the sparkline groups on the sheet
    For Each oSparkGroup In ActiveSheet.Range("A:XFD").SparklineGroups
        'For each sparkline group found, add the address to the listbox
        SparklineListBox.AddItem oSparkGroup.Location.Address(, , , True)
    Next oSparkGroup
End Sub

Private Sub SparklineListBox_Click()
    'Activate the selected range that has the sparklines
    Range(SparklineListBox.Value).Activate
End Sub

Private Sub CloseBtn_Click()
    'Close the userform
    Unload Me
End Sub

См. также

Объектная программирование SparklineGroup с помощью sparklines in Excel

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.