|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
Здравствуйте! С VBA до сего дня не сталкивался =) Подскажите плиз, как составить (как будет выглядеть) макрос, который строит n-ное число диаграмм, где, n= кол-ву строк в таблице. Т.е., как вот это: Range("A1:B1").Select Charts.Add ActiveChart.ChartType = xlColumnClustered ActiveChart.SetSourceData Source:=Sheets("Лист1").Range("A1:B1") ActiveChart.Location Where:=xlLocationAsObject, Name:="Лист1" можно вставить в какой-нить цикл, где А1:В1 будет с каждым разом увеличиваться на 1, т.е. приобретать вид А2:В2, затем А3:В3 и так далее до конца таблицы. P.S. Строк в табл 1.5k, так что итогом работы цикла будет А1500:В1500, руками делать все - заманаюсь, очень нужен макрос =) Всем спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2008, 16:43 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
киньте-ка лучше пример, точнее будет ответ! -каждая диаграмма - на новом листе или не этом же? -цикл будет какой-то такой: Sub sss() foi i% = 1 to 1500 'протестируйте для начала от 1 до 50, а то, чую, долго будет range(cells(i,1),cells(i,2)).activate 'ваши действия next i end sub ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2008, 17:30 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
сорри: fo r i% ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2008, 17:30 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
Большое спасибо PlanB! К сожалению проблема не до конца решена =( У меня получилось вот что: Sub sss() For i% = 1 To 5 Range("A1:B5").Select Charts.Add ActiveChart.ChartType = xlColumnClustered ActiveChart.SetSourceData Source:=Sheets("Лист1").Range("A1:B1") ActiveChart.Location Where:=xlLocationAsObject, Name:="Лист1" Next i End Sub т.е. одна и таже диаграмма стороится 4 раза (но это уже прогресс!) ;-) вся загвоздка в Range("A1:B1"), как заставить эту часть изменяться на A2:B2 и т.д?? СПАСИБО! ... |
|||
:
Нравится:
Не нравится:
|
|||
04.12.2008, 21:46 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9.
PlanBrange(cells(i,1),cells(i,2)).activateТолько обратите внимание на значения Cells(i,5) в строке Код: plaintext
Получилось тем не удобно, что у вас все диаграммы друг на друге... 1500 не знаю как вы будете передвигать Дайте пример, говорил же, ответ точнее получится. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2008, 09:29 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
PlanB Код: plaintext 1.
ругается на эту строчку, мол - Рун-тайм эррор 1004: "указано измерение, недопустимое для текущего типа диаграмм" =( и строитя первая таблица на отдельном листе =/ Юзаю Excel 2003/2007. Пример с желаемым рез-том лежит тут: http://crpo.info/doc/excel.rar только в оригинале 1,5к строчек =) Огромное спасибо за внимание!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2008, 11:54 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
chief-workerPlanB Код: plaintext 1.
ругается на эту строчку, мол - Рун-тайм эррор 1004: "указано измерение, недопустимое для текущего типа диаграмм" =( и строитя первая таблица на отдельном листе =/ Юзаю Excel 2003/2007. Пример с желаемым рез-том лежит тут: http://crpo.info/doc/excel.rar только в оригинале 1,5к строчек =) Огромное спасибо за внимание!!! В примере макроса естейственно нет =/ диаграммки нарисованы руками 1500 наложенных друг на друга диаграмм будут перелопачены с помощью [Ctrl] + A / [Ctrl] + C / [Ctrl] + V и прочие горячие кнопки =))) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.12.2008, 11:56 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
Готово! Разобрался! =) ВСЕМ СПАСИБО!!! Вот что получилось: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
это если строить по вертикали, т.е. графики строим по столбцам, ежели нужно по строчкам, то: Код: plaintext 1. 2. 3. 4.
и переменная i в начале кода = 1 =) P.S. С VBA не знаком вообще =) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2008, 11:25 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
У меня работало так, как я написал... Ну вы и наворотили Проще надо, проще ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2008, 12:46 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
PlanB,ваш макрос работает,спасибо! Но как его доработать,когда данные есть не только в столбцах,но и в строках? Тип диаграммы:xlSurfaceTopView (Поверхность) ... |
|||
:
Нравится:
Не нравится:
|
|||
03.04.2014, 20:39 |
|
VBA+Excel+Автоматизация построения диаграмм
|
|||
---|---|---|---|
#18+
cheb87, да там все то же самое. целевой область только будет прямоугольником, у которого длина и ширина, выраженные в ячейках будут больше 1. Соответственно двигать надо будет не на 1, а на ширину этого диапазона. примерно так: For i% = 1 To 1500 step 10, где 10 - это ширина области. ... |
|||
:
Нравится:
Не нравится:
|
|||
04.04.2014, 16:15 |
|
|
start [/forum/topic.php?fid=60&fpage=44&tid=2156425]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
43ms |
get topic data: |
13ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 285ms |
total: | 431ms |
0 / 0 |