Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Определить, выбран ли ряд данных на диаграмме, Как определить выбран ли ряд данных (выделен) на уже созданной диаграмме?
 
Максим, спасибо большое за подсказку. TypeName(Selection)="Series" работает как надо, возьму на заметку). А я тогда шел менее оптимальным путем:

Dim rez As Series
Set rez = Selection

Тут, когда выбрана не линия, возникает ошибка, которую отлавливал)
Определить, выбран ли ряд данных на диаграмме, Как определить выбран ли ряд данных (выделен) на уже созданной диаграмме?
 
Максим, спасибо! Я тоже до этого догадался, просто еще не успел написать сюда. Этот способ работает корректно потому, что на диаграмме нельзя выделить несколько линий одновременно. И еще, надо сделать проверку, что выбрана именно линия, а не что-то другое), так как под Selection может попасть все что угодно)

А зная имя (SeriesN), можно управлять данными диаграммы. Сейчас еще ищу альтернативный способ построения диаграммы. В идеале с событием OnClick для Series.
Определить, выбран ли ряд данных на диаграмме, Как определить выбран ли ряд данных (выделен) на уже созданной диаграмме?
 
Добрый день!
Подскажите, есть ли возможность определить какие линии на диаграмме выбраны (т.е. выделены мышкой).
Доступ к созданной диаграмме есть (диаграмма расположена на рабочем листе), а вот какое свойство отвечает за состояние линии (выделено = true, обратное = false) так и не смог найти.

Dim myChart As ChartObject
If myChart.Chart.SeriesCollection(myChart.Chart.SeriesCollection.Count).Select = True Then

Этот код работает, но он сначала выделяет линию и затем заходит в условие.
Вместо select пробовал selection и даже activate, не работают такие свойства((.

Заранее благодарен за советы
Создание пользовательской функции с переменным количеством аргументов, как СЧЁТЕСЛИМН()
 
Цитата
The_Prist написал: А чем именно не подходит, если не секрет?
Дело в том, что тогда пользователю нужно объяснять, в каком порядке вводить данные, допустим первые 10 заполнит корректно, а вот потом есть большая вероятность сбиться, какой параметр в данный момент вводить. А причина в том, что при использовании ParamArray нет подписей, а лишь многоточия (прикрепил рисунок).
Изменено: Palsanich - 11.09.2015 18:21:21
Создание пользовательской функции с переменным количеством аргументов, как СЧЁТЕСЛИМН()
 
Думаю, вариант с использованием Optional подойдет, вот только, когда аргументов будет передаваться много, тяжко придется)) Можно выкрутиться и с ParamArray, с ним проще входные данные обработать,буду пробовать.
Просто не верится, что разработчики, программируя функцию СЧЁТЕСЛИМН() 255 раз прописывали ее аргументы, хотя кто их знает)
Создание пользовательской функции с переменным количеством аргументов, как СЧЁТЕСЛИМН()
 
Доброго дня!
Может кто подскажет, как правильно записать параметры пользовательской функции function myFunction (?????), чтобы при вызове функции можно было получить такое же окно для ввода, как при вызове функции СЧЁТЕСЛИМН() (прикрепил рисунок). И вообще, возможно ли такое? Пробовал ParamArray, но это не совсем подходит.

Заранее благодарен за помощь!
Отсортировать по убыванию Время и при этом оставить связь Времени с ФИО
 
Как вариант, так же задействовал вспомогательные столбцы
Изменено: Palsanich - 27.05.2015 12:55:56
Построение диаграммы с двухуровневой осью X
 
Добрый день!

Возникла потребность построить диаграмму с осью Х, на которой информация размещается в 2 ряда (первый - год, второй - месяцы). Рисунок во вложении.
Проблема в следующем:
myChart.SeriesCollection(1).XValues = Worksheets("Sheet1").Range("C6:I7") делает расстановку на оси Х верно (год и месяцы),а вот если это сделать при помощи массива (код ниже), то желаемого результата не получается
massX = Worksheets("Sheet1").Range("C6:I7")
myChart.SeriesCollection(1).XValues = massX

может кто знает, какой размерности должен быть массив и как в нем должны храниться данные?

так же прикладываю файл с диаграммой и макросом! Заранее благодарен!
Создание пустой диаграммы (VBA)
 
Пробовал разные комбинации, в итоге выкладываю тестовый файл, 2 макроса рабочих. А вот макрос с использованием

on error resume next
...(код с диаграммой)
...(здесь обнуляем ресурсный диапазон)

не позволяет присвоить объект переменной.

Всем спасибо за помощь!!!
Создание пустой диаграммы (VBA)
 
Set myChart = ActiveSheet.ChartObjects.Add(left, top, width, height)

Максим, спасибо за совет! Но если заполнить лист (хотя бы 300 строк и 300 столбцов) любыми значениями. То при построении выдается ошибка. Не может Excel справиться с таким диапазоном.
Изменено: Palsanich - 21.04.2015 17:09:53
Создание пустой диаграммы (VBA)
 
Андрей, Вы правы и верно понимаете мою мысль, можно  и так выкрутиться, и две любые ячейки выделить перед построением. Но это хочу на крайний случай оставить. Еще вечер помучаюсь)) Просто интересно, неужели в Microsoft не определили конструктор пустой диаграммы. А код Максима я еще утром пробовал. Ошибка при построении, так как верно было замечено, что Excel при построении диаграммы сам определяет диапазоны данных для построения.
Изменено: Palsanich - 21.04.2015 17:08:56
Создание пустой диаграммы (VBA)
 
Добрый день, форумчане!
Подскажите, есть ли возможность создать пустую диаграмму средствами VBA?

Дело в том, что на листе очень много данных и выдается ошибка о невозможности создания диаграммы (The maximum number of data series per chart is 255). Выделять ячейки заранее не хочется.

В планах сделать так:
1. Получить объект диаграмм, что-то вроде
                     Set myChart = ActiveSheet.Shapes.AddChart()
                     только без привязки к ячейкам или что-то вроде:
                      Set myChart = ActiveSheet.Shapes.AddChart("A1:A1") - но такого конструктора, как я понял, нет.
2. Затем создать массивы с данными и присвоить эти данные диаграмме.

Проблема именно в получении объекта (пустой диаграммы).
Страницы: 1
Наверх