|
|
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
Доброго всем времени суток. Помогите плз создать макрос. Осваивать VB начал 3 дня назад, а работа требует скорейшего решения. Проблема: Есть таблица (Excel) изменений некоего параметра за 2006 г. Необходимо создать график зависимости "Дата (ось х)-значение параметра (ось у)". Но при запуске макроса должно выскочить окно, где надо указать диапазон дат (От - До). Можно там же поставить переключатель для стандартных значений: "За текущий месяц", "За прошлый месяц", "За последние 3 месяца". Жмем ОК - гравик готов. Если до этого там уже есть график, то новый заменит старый. Очень надеюсь на помощь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 17:16:51 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
Да! Забыл сказать - на 2006 году таблица не кончается - она будет продолжаться. Другими словами строка 367 - не последняя. Бест регардс. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.11.2006, 17:35:26 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
во-первых нужно посчитать кол-во непустых строк в таблице, на основе которой будет график, есть функция =СЧЁТЗ(B3:B13) во-вторых записать макрос создания графика приблизительно по такому сценарию http://www.sql.ru/forum/actualthread.aspx?tid=345986&hl=%e7%e0%ef%e8%f1%e0%f2%fc+%ec%e0%ea%f0%ee%f1 потом в коде VBA посмотреть программу ,котоhe. Excel написал и адаптировать под себя... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 09:15:58 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
Ну допустим я создам макрос создания графика, но ведь мне не менее важно чтобы он создавался на уазанный мною промежуток дат. В этом и есть вся проблема. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 11:57:23 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
единственный выход - написать функцию например, которая покажет, попадает ли строка в указанный диапазон, и только если таблица упорядочена по возрастанию, 01.01.2006 12 0 02.01.2006 15 0 03.01.2006 16 1 04.01.2006 18 1 05.01.2006 19 1 06.01.2006 20 1 07.01.2006 23 1 08.01.2006 22 0 09.01.2006 22 0 10.01.2006 22 0 вот отобрали диапазон - теперь считаем первую строку с 1 и затем последнюю с 1 - это первая + кол-во с 1ей посчитать исходя их этого координаты диапазона для построения графика. либо взять и отобранные перенести на новый лист - а там на основе его нарисовать все... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 12:06:05 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 12:18:54 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
Спасибо, хорошая идея. Принимаю с благодарностью. А есть какие идеи, как увеличить размер графика? Проблема в том, что каждый следующий график с новым именем "Диагр. (n+1)". Я так думаю надо как-то переименовать Созданный график, например в "Диагр. 1". И в конце макроса добавить: ActiveSheet.Shapes("Диагр. 1").ScaleWidth 1.4, msoFalse, msoScaleFromTopLeft ActiveSheet.Shapes("Диагр. 1").ScaleHeight 1.4, msoFalse, msoScaleFromTopLeft Если "Диагр. 1" существует, то её удалить, а новую "Диагр. 1" создать. Ну это как я думаю. А вот в VB как сделать я не знаю :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 14:48:19 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
я же написал, во-вторых записать макрос создания графика приблизительно по такому сценарию посему нужно записывать макрос, делая все, что вам нужно, потом смотреть код на VBA - следом адаптировать под себя... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 14:54:17 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
А зачем тебе удалять каждый раз диаграмму, если достаточно изменить диапазон исходных данных. См. файл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 16:15:19 |
|
||
|
Макрос чтобы создать график, указав диапазон значений.
|
|||
|---|---|---|---|
|
#18+
Мда... Все гениальное просто. Ну Ок, как создавать графики я научился :). Теперь следующее: при нажатии кнопки выскакивает userform. В ней надо ввести дату начала и конца. Форму сделал, дату ввожу, а график не меняется - ошибку выдает. Это относится и к Graphik2.xls и Graphik(1).xls (см файл). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.11.2006, 17:16:48 |
|
||
|
|

start [/forum/topic.php?fid=61&msg=34136003&tid=2183889]: |
0ms |
get settings: |
10ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
71ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
| others: | 221ms |
| total: | 391ms |

| 0 / 0 |
