Я нашел вопрос "Удаление записей легенды с пустым названием серии с использованием VBA" здесь Очень похоже на проблему, с которой я столкнулся, но с изюминкой.
У меня две кнопки,«Load Chart» и «Clear Chart» вот так
Диаграмма представляет собой столбчатую диаграмму с несколькими сериями каждая.У меня есть некоторые отступы, в которых цвет заливки и границы линий были удалены, чтобы он выглядел как диаграмма Ганта.В настоящее время это выглядит так (Пустышка)
Также необходимо удалить запись легенды с именем padding и несколько дополнительных записей легенды в конце,Я попробовал следующий код, который запускается в конце макроса диаграммы загрузки:
With ActiveChart
For i = .Legend.LegendEntries.Count To UptoRequiredSeries + 1 Step -1
.Legend.LegendEntries(i).Delete
' Debug.Print .Legend.LegendEntries(i - 1)
Next i
End With
Я не хочу использовать свойство IsFiltered, как предлагается в связанном вопросе.Я буквально хочу удалить записи легенды, которые мне не нужны.Проблема усугубляется, так как я обнаружил, что диаграмма очищает количество записей легенды после очистки диаграммы.Поэтому в следующий раз, когда я загружу диаграмму, возникнут проблемы с удалением существующих записей легенды.
Требуется ваша помощь, заранее спасибо.
РЕДАКТИРОВАТЬ1: у меня была эта проблемапотому что было больше серий, чем легенд, и это было потому, что некоторые цвета серии должны были повторяться.Как например: Серия A, затем B, затем Closed, а затем снова A.Когда цвет должен повториться, я создаю новую серию и устанавливаю нули для других случаев этого в массиве данных.Я использую операции нарезки для установки массива значений.