powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
7 сообщений из 7, страница 1 из 1
макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
    #37834294
pechkin13th
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
уважаемые Гуру и иже с ними!!! срочно нужна помощь, несколько дней не могу справиться с проблеммой: макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно.

имею 20 диаграмм, на каждой из которых 2 ломаные кривые, с помощью макроса пытаюсь очистить их от исходных данных, чтоб потом опять же с помощью макроса задать новые ряды с исходными данными. Первую диаграмму очищает, на второй на первом же ряде исходных данных останавливается. Макрос выглядит так:

For i = 1 To 20 Step 1
ActiveSheet.ChartObjects(i).Activate
'производим предварительное удаление из диаграммы старых исходных данных
ActiveChart.ChartArea.Select
With ActiveChart
Do Until .SeriesCollection.Count = 0
.SeriesCollection(1).Delete
Loop
End With
Next i

зачем пытаюсь удалять SeriesCollection: сначала пытался макросом изменять ссылки на эти ряды, но выскакивала ошибка 1004 "Нельзя установить свойство Values класса Series", её я побороть не смог, на нескольких форумах никто так и не отозвался с советом, поэтому я таким образом пытался проблему обойти. Но ...

Может у кого будут какие-то идеи??? Очень нужна помощь, причем время не терпит
...
Рейтинг: 0 / 0
макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
    #37834321
guest1234567890
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
авторсначала пытался макросом изменять ссылки на эти ряды, но выскакивала ошибка 1004 "Нельзя установить свойство Values класса Series", её я побороть не смог
Показывай - как пытался.
...
Рейтинг: 0 / 0
макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
    #37834418
Фотография VladConn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pechkin13th,

Не пробовал и не вдавался, но может попробовать обычный цикл справа налево (вместо Do Until) ?

И почему ты активируешь графики вместо прямого обращения к ним? Для чего тебе нужно, чтобы они были именно активированы и даже выбраны?
...
Рейтинг: 0 / 0
макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
    #37834598
pechkin13th
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VladConn,

сначала делал это и обычным циклом, была та же проблема, поэтому нашел на форумах подобное решение, оно вроде более элегантное чем обычный цикл, но проблема осталась
...
Рейтинг: 0 / 0
макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
    #37834605
pechkin13th
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VladConnpechkin13th,

Не пробовал и не вдавался, но может попробовать обычный цикл справа налево (вместо Do Until) ?

И почему ты активируешь графики вместо прямого обращения к ним? Для чего тебе нужно, чтобы они были именно активированы и даже выбраны?

Да, кстати, возможно текст моего макроса не самый совершенный, поскольку пользователь в VBA я начинающий. Именно поэтому в тексте макроса появляются активация графика или его выбор. Макрос я сначала пишу с помощью средства EXCEL по автоматической записи действий пользователя, а потом корректирую полученный код под свои нужды.
...
Рейтинг: 0 / 0
макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
    #37834633
Фотография VladConn
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pechkin13th,

В 999 из 1000 не требуется ни активировать, ни выбирать объекты для манипулирования с ними.
...
Рейтинг: 0 / 0
макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
    #37839068
pechkin13th
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
РЕШЕНО: макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно

у меня источником ошибки было следующее:
в рядах исходных данных для диаграмм у меня формулы, в некоторых случаях рассчитанные в них значения #Н/Д (или для англ.версии #N/A) - это неопределенное событие. У меня это использовалось для того, чтобы в некоторых точках диаграммы не было нуля, и соответственно она не отображалась на графике.

но в таком случае (или если значения будут равны "" - т.е. "ПУСТО") для таких исходных данных MICROSOFT описал наличие ошибки у некоторых типов диаграмм, в том числе для графика (с маркерами), который использован у меня, в зависимости от порядка отображения на диаграммах пустых значений. Такая статья была ранее опубликована под Q213379.

Ссылка, где нашел:
http://translate.googleusercontent.com/translate_c?hl=ru&langpair=en%7Cru&rurl=translate.google.com.ua&u=http://support.microsoft.com/default.aspx%3Fscid%3Dkb%3Ben-us%3B213379&usg=ALkJrhg8pxTN4EOZlbctew_7MYQKfHUWZA

РЕШЕНИЕ:

1) диапазон, в котором находятся исходные данные для диаграмм (точнее расчетные формулы, у которых значение иногда могло быть равно #Н/Д или ""), методом специальной вставки "только значения" скопировал в другое место;
2) полученный диапазон уже только значений обработал "ЗАМЕНИТЬ" (replace) значения #Н/Д на значения "" (пусто);
3) изменил свойства всех диаграмм (с помощью макроса, чтоб быстрее, поскольку у меня 29 листов по 20 диаграмм на каждом) через меню EXCEL Сервис\Параметры\Диаграмма\Активная_диаграмма "Для пустых ячеек - подразумеваются нулевые значения";
4) потом макросом (на этом этапе работы моего макроса в принципе и возникала ошибка) выполнял коррекцию ссылок на ряды исходных данных для диаграмм, только теперь ссылки делал на второй диапазон (где только значения без формул), что в шаге 2;
5) после этого возвращал в свойствах диаграмм порядок отображения пустых ячеек "Для пустых ячеек - значения интерполируются". Мне нужен был именно такой порядок, чтоб некоторые точки на диаграмме вообще не отображались. Это потому, что я строил на каждом графике по 2 кривые, но у одной кривой точек для построения, например, 8, а у другой кривой вдвое меньше, 4. При такой особенности мне не нужны были нули у второй кривой, где у неё не было значений.

Буду рад, если мои, возможно несколько путанные объяснения, кому-то помогут. Сам бился с проблемой около недели, уже руки начинали опускаться, думал что не справлюсь.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / макрос выдает ошибку 1004 метод Delete из класса Series завершен неверно
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]