Использование макроса для добавления меток к точкам данных на точечной диаграмме XY или пузырьковой диаграмме в Excel

Переводы статьи Переводы статьи
Код статьи: 213750 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

Аннотация

В Microsoft Excel отсутствует встроенная команда для добавления текстовых меток к точкам данных на точечной или пузырьковой диаграмме. Однако для выполнения этой задачи можно создать макрос на языке Microsoft Visual Basic для приложений. В данной статье приводится образец макроса, который выполняет эту задачу для точечной диаграммы XY. Однако этот же код можно использовать и для пузырьковой диаграммы.

Дополнительная информация

Корпорация Майкрософт приводит примеры программного кода только для иллюстрации и не предоставляет явных или подразумеваемых гарантий относительно их пригодности для применения в пользовательских приложениях. Примеры в данной статье рассчитаны на пользователя, имеющего достаточный уровень знаний соответствующего языка программирования и необходимых средств разработки и отладки. Сотрудники службы поддержки Майкрософт могут объяснить возможности конкретной процедуры, но не будут изменять примеры для реализации дополнительных возможностей или удовлетворения требований конкретных пользователей. Для приведенного в данной статье кода предполагается, что данные и связанные с ними метки упорядочены на листе указанным ниже образом.
  • Первый столбец содержит метки данных.
  • Второй столбец содержит значения X для точечной диаграммы.
  • Третий столбец содержит значения Y для точечной диаграммы.
Примечание. Хотя в примере приведен только один столбец данных для значений координаты Y, можно использовать несколько рядов данных.

Чтобы воспользоваться макросом, приведенным в данной статье, создайте диаграмму на основе следующих данных:
   A1: Метки       B1: Значения X   C1: Значения Y
   A2: Точка1   B2: 12          C2: 5
   A3: Точка2   B3:  9          C3: 7
   A4: Точка3   B4:  5          C4: 3
   A5: Точка4   B5:  4          C5: 8
   A6: Точка5   B6:  1          C6: 4
Примечание. В таблице не должно быть пустых столбцов, а столбец с метками данных не должен быть отделен от столбца со значениями координаты X. Метки и значения должны быть упорядочены в точности в соответствии с указанным выше форматом. (Верхняя левая ячейка не обязательно должна быть ячейкой A1.)

Чтобы прикрепить текстовые метки к точкам данных на точечной диаграмме, выполните указанные ниже действия.
  1. Выделите на листе с данными диапазон ячеек B1:C6.
  2. В Microsoft Office Excel 2003 и более ранних версиях выполните указанные ниже действия.
    1. В меню Вставка выберите пункт Диаграмма.
    2. В диалоговом окне Мастер диаграмм (шаг 1 из 4): тип диаграммы откройте вкладку Стандартные. В списке Тип выберите вариант Точечная и нажмите кнопку Далее.
    3. В диалоговом окне Мастер диаграмм (шаг 2 из 4): источник данных диаграммы откройте вкладку Диапазон данных. Установите переключатель Расположение в положение Столбцы и нажмите кнопку Далее.
    4. В диалоговом окне Мастер диаграмм (шаг 3 из 4): параметры диаграммы нажмите кнопку Далее.
    5. В диалоговом окне Мастер диаграмм (шаг 4 из 4): размещение диаграммы выберите параметр На новом листе и нажмите кнопку Готово.
    В Microsoft Office Excel 2007 выполните указанные ниже действия.
    1. Откройте вкладку Вставка, выберите в группе Диаграммы элемент Точечная, а затем выберите тип.
    2. На вкладке Конструктор выберите в группе Размещение элемент Перемещение диаграммы, нажмите кнопку Создать лист, затем нажмите кнопку ОК.
  3. Нажмите клавиши ALT+F11, чтобы запустить редактор Visual Basic.
  4. В меню Вставка выберите команду Модуль.
  5. Введите в окне модуля следующий код:
    Sub AttachLabelsToPoints()
    
       ' Переменные размерности.
       Dim Counter As Integer, ChartName As String, xVals As String
    
       ' Отключить обновление экрана в процессе выполнения процедуры.
       Application.ScreenUpdating = False
    
       ' Сохранить формулу для первого ряда в переменной "xVals".
       xVals = ActiveChart.SeriesCollection(1).Formula
    
       ' Извлечь диапазон данных из переменной xVals.
       xVals = Mid(xVals, InStr(InStr(xVals, ","), xVals, _
          Mid(Left(xVals, InStr(xVals, "!") - 1), 9)))
       xVals = Left(xVals, InStr(InStr(xVals, "!"), xVals, ",") - 1)
       Do While Left(xVals, 1) = ","
          xVals = Mid(xVals, 2)
       Loop
    
       ' Прикрепить метку к каждой точке данных на диаграмме.
       For Counter = 1 To Range(xVals).Cells.Count
         ActiveChart.SeriesCollection(1).Points(Counter).HasDataLabel = _
             True
          ActiveChart.SeriesCollection(1).Points(Counter).DataLabel.Text = _
             Range(xVals).Cells(Counter, 1).Offset(0, -1).Value
       Next Counter
    
    End Sub
  6. Чтобы вернуться в Excel, нажмите клавиши ALT+Q.
  7. Перейдите на лист с диаграммой.
  8. Если используется Microsoft Office Excel 2003 или более ранняя версия Excel, выберите в меню Сервис пункт Макрос, а затем — пункт Макросы. Чтобы запустить макрос, выберите макрос AttachLabelsToPoints и нажмите кнопку Выполнить.

    В Excel 2007 откройте вкладку Разработчик, выберите в группе Код элемент Макрос, выберите макрос AttachLabelsToPoints и нажмите кнопку Выполнить.
Макрос прикрепит метки в ячейках A2:A6 к точкам данных на диаграмме.

Свойства

Код статьи: 213750 - Последний отзыв: 28 ноября 2007 г. - Revision: 4.1
Информация в данной статье относится к следующим продуктам.
  • Microsoft Office Excel 2007
  • Microsoft Office Excel 2003
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 97 Standard Edition
  • Microsoft Excel X for Mac
  • Microsoft Excel 2001 for Mac
  • Microsoft Excel 98 for Macintosh
Ключевые слова: 
kbhowto kbinfo kbchart kbprogramming kbdtacode KB213750

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com