Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: знаноки, жду вашей помощи!!! - продолжение.. Добавлено: 20.01.09 14:52  

Автор вопроса:  Серега
вот программый код:

Private Sub CommandButton14_Click()
Dim grafik As Chart
Set grafik = Charts.Add
With grafik
.ChartType = xlXYScatterSmoothNoMarkers
.Axes(xlValue).MinimumScale = -10
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "M, H*м"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "W, рад/с"
.Axes(xlCategory, xlPrimary).MinorTickMark = xlOutside
.SetSourceData Source:=Sheets("Лист1").Range("A1")
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = "=Таблица!R2C3:R14C3"
.SeriesCollection(1).Values = "=Таблица!R2C2:R14C2"
.SeriesCollection(1).Name = "ест"
.SeriesCollection(2).XValues = "=Таблица!R2C3:R14C3"
.SeriesCollection(2).Values = "=Таблица!R2C5:R14C5"
.SeriesCollection(2).Name = "P1"
.SeriesCollection(3).XValues = "=Таблица!R2C3:R14C3"
.SeriesCollection(3).Values = "=Таблица!R2C7:R14C7"
.SeriesCollection(3).Name = "P2"
.SeriesCollection(4).XValues = "=Таблица!R2C3:R14C3"
.SeriesCollection(4).Values = "=Таблица!R2C9:R14C9"
.SeriesCollection(4).Name = "P3"
.SeriesCollection(5).XValues = "=Таблица!R2C3:R14C3"
.SeriesCollection(5).Values = "=Таблица!R2C11:R14C11"
.SeriesCollection(5).Name = "P4"
.SeriesCollection(6).XValues = "=Таблица!R2C3:R14C3"
.SeriesCollection(6).Values = "=Таблица!R2C13:R14C13"
.SeriesCollection(6).Name = "P5"
.SeriesCollection(7).XValues = "=Таблица!R2C3:R14C3"
.SeriesCollection(7).Values = "=Таблица!R2C15:R14C15"
.SeriesCollection(7).Name = "P6"
.Location Where:=xlLocationAsObject, Name:="Лист1"
End With
End Sub


На моем компьютере при его выполнении ошибку не выдает, а вот на другом -ругается на строчку .Axes(xlValue).MinimumScale = -10

У меня Office 2007, на другом компе office 2003
Кто знает в чем проблема и как можно это исправить?

Пробовал как посоветовал fAndOrIn:
Private Sub CommandButton14_Click()
Dim grafik As Chart
Set grafik = Charts.Add
On Error Resume Next
With grafik
'код без изменений(что по силам, то и выполнит)
End With
If Err Then Err.Clear
End Sub

Но не получается.. ошибки нет, он просто игнорирует эту команду и все=( а мне обязательно нужно поставить это ограничение, иначе графики получаются очень мелкие с лишними линиями

Ответить

  Ответы Всего ответов: 4  

Номер ответа: 1
Автор ответа:
 Father



Вопросов: 0
Ответов: 159
 Профиль | | #1 Добавлено: 20.01.09 17:24
Попробуй так.
  1. Dim grafik As Chart
  2. Set grafik = Charts.Add
  3. With grafik
  4.  .SetSourceData Source:=Sheets("Лист1").Range("A1:A2")'
  5. ... 'Потом уже все остальное
  6. ...

Ответить

Номер ответа: 2
Автор ответа:
 Серега



Вопросов: 2
Ответов: 14
 Профиль | | #2 Добавлено: 21.01.09 14:30
Попробовал.. но теперь ошибка в другом..
Вот скрин: http://s57.radikal.ru/i158/0901/3f/93e7a09326fb.jpg

  1.  
  2. Private Sub CommandButton14_Click()
  3. Dim grafik As Chart
  4. Set grafik = Charts.Add
  5. With grafik
  6. .SetSourceData Source:=Sheets("Лист1").Range("A1:A2")
  7. .ChartType = xlXYScatterSmoothNoMarkers
  8. .Axes(xlValue).MinimumScale = -10
  9. .Axes(xlCategory, xlPrimary).HasTitle = True
  10. .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "M, H*м"
  11. .Axes(xlValue, xlPrimary).HasTitle = True
  12. .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "W, рад/с"
  13. .Axes(xlCategory, xlPrimary).MinorTickMark = xlOutside
  14. .SeriesCollection.NewSeries
  15. .SeriesCollection.NewSeries
  16. .SeriesCollection.NewSeries
  17. .SeriesCollection.NewSeries
  18. .SeriesCollection.NewSeries
  19. .SeriesCollection.NewSeries
  20. .SeriesCollection(1).XValues = "=Таблица!$C$2:$C$14"'ругается на эту строчку
  21. .SeriesCollection(1).Values = "=Таблица!$B$2:$B$14"
  22. .SeriesCollection(1).Name = "ест"
  23. .SeriesCollection(2).XValues = "=Таблица!$C$2:$C$14"
  24. .SeriesCollection(2).Values = "=Таблица!$E$2:$E$14"
  25. .SeriesCollection(2).Name = "P1"
  26. .SeriesCollection(3).XValues = "=Таблица!$C$2:$C$14"
  27. .SeriesCollection(3).Values = "=Таблица!$G$2:$G$14"
  28. .SeriesCollection(3).Name = "P2"
  29. .SeriesCollection(4).XValues = "=Таблица!$C$2:$C$14"
  30. .SeriesCollection(4).Values = "=Таблица!$I$2:$I$14"
  31. .SeriesCollection(4).Name = "P3"
  32. .SeriesCollection(5).XValues = "=Таблица!$C$2:$C$14"
  33. .SeriesCollection(5).Values = "=Таблица!$K$2:$K$14"
  34. .SeriesCollection(5).Name = "P4"
  35. .SeriesCollection(6).XValues = "=Таблица!$C$2:$C$14"
  36. .SeriesCollection(6).Values = "=Таблица!$M$2:$M$14"
  37. .SeriesCollection(6).Name = "P5"
  38. .SeriesCollection(7).XValues = "=Таблица!$C$2:$C$14"
  39. .SeriesCollection(7).Values = "=Таблица!$O$2:$O$14"
  40. .SeriesCollection(7).Name = "P6"
  41. .Location Where:=xlLocationAsObject, Name:="Лист1"
  42. End With
  43. End Sub

Ответить

Номер ответа: 3
Автор ответа:
 Father



Вопросов: 0
Ответов: 159
 Профиль | | #3 Добавлено: 21.01.09 16:49
Капризная сука.:)
  1. Private Sub CommandButton14_Click()
  2. Dim MySr As Series
  3. Dim grafik As Chart
  4. Set grafik = Charts.Add
  5. With grafik
  6.     .SetSourceData Source:=Sheets("Лист1").Range("A1:A2")
  7.     .ChartType = xlXYScatterSmoothNoMarkers
  8.     .Axes(xlValue).MinimumScale = -10
  9.     .Axes(xlCategory, xlPrimary).HasTitle = True
  10.     .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "M, H*м"
  11.     .Axes(xlValue, xlPrimary).HasTitle = True
  12.     .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "W, рад/с"
  13.     .Axes(xlCategory, xlPrimary).MinorTickMark = xlOutside
  14.  
  15. Set MySr = .SeriesCollection.NewSeries
  16.     MySr.Name = "ест"
  17.     MySr.XValues = "Таблица!$C$2:$C$14"
  18.     MySr.Values = Worksheets("Таблица").Range("$B$2:$B$14")
  19.  
  20. Set MySr = .SeriesCollection.NewSeries
  21.     MySr.Name = "P1"
  22.     MySr.XValues = "Таблица!$C$2:$C$14"
  23.     MySr.Values = Worksheets("Таблица").Range("$E$2:$E$14")
  24.  
  25. Set MySr = .SeriesCollection.NewSeries
  26.     MySr.Name = "P2"
  27.     MySr.XValues = "Таблица!$C$2:$C$14"
  28.     MySr.Values = Worksheets("Таблица").Range("$G$2:$G$14")
  29.  
  30. Set MySr = .SeriesCollection.NewSeries
  31.     MySr.Name = "P3"
  32.     MySr.XValues = "Таблица!$C$2:$C$14"
  33.     MySr.Values = Worksheets("Таблица").Range("$I$2:$I$14")
  34.  
  35. Set MySr = .SeriesCollection.NewSeries
  36.     MySr.Name = "P4"
  37.     MySr.XValues = "Таблица!$C$2:$C$14"
  38.     MySr.Values = Worksheets("Таблица").Range("$K$2:$K$14")
  39.  
  40. Set MySr = .SeriesCollection.NewSeries
  41.     MySr.Name = "P5"
  42.     MySr.XValues = "Таблица!$C$2:$C$14"
  43.     MySr.Values = Worksheets("Таблица").Range("$M$2:$M$14")
  44.  
  45. Set MySr = .SeriesCollection.NewSeries
  46.     MySr.Name = "P6"
  47.     MySr.XValues = "Таблица!$C$2:$C$14"
  48.     MySr.Values = Worksheets("Таблица").Range("$O$2:$O$14")
  49.     
  50.     .Location Where:=xlLocationAsObject, Name:="Лист1"
  51. End With
  52.  
  53. End Sub

Ответить

Номер ответа: 4
Автор ответа:
 Серега



Вопросов: 2
Ответов: 14
 Профиль | | #4 Добавлено: 22.01.09 15:30
Father, спасибо.. благодаря тебе кое что получилось.. еще посидев и потосовав местами строки я добился своего..вроде бы)))..

вот код кому интересно, может понадобится в будущем!!
  1.  
  2. Private Sub CommandButton1_Click()
  3. Dim MySr As Series
  4. Dim grafik As Chart
  5. Set grafik = Charts.Add
  6. With grafik
  7.  
  8. Set MySr = .SeriesCollection.NewSeries
  9.     MySr.Name = "W=f(M)"
  10.     MySr.XValues = Worksheets("Таблица").Range("$C$2:$C$14")
  11.     MySr.Values = Worksheets("Таблица").Range("$B$2:$B$14")
  12.  
  13. Set MySr = .SeriesCollection.NewSeries
  14.     MySr.Name = "Wи1=f(M)"
  15.     MySr.XValues = Worksheets("Таблица").Range("$C$2:$C$14")
  16.     MySr.Values = Worksheets("Таблица").Range("$E$2:$E$14")
  17.  
  18. Set MySr = .SeriesCollection.NewSeries
  19.     MySr.Name = "Wи2=f(M)"
  20.     MySr.XValues = Worksheets("Таблица").Range("$C$2:$C$14")
  21.     MySr.Values = Worksheets("Таблица").Range("$G$2:$G$14")
  22.  
  23. Set MySr = .SeriesCollection.NewSeries
  24.     MySr.Name = "Wи3=f(M)"
  25.     MySr.XValues = Worksheets("Таблица").Range("$C$2:$C$14")
  26.     MySr.Values = Worksheets("Таблица").Range("$I$2:$I$14")
  27.  
  28. Set MySr = .SeriesCollection.NewSeries
  29.     MySr.Name = "Wи4=f(M)"
  30.     MySr.XValues = Worksheets("Таблица").Range("$C$2:$C$14")
  31.     MySr.Values = Worksheets("Таблица").Range("$K$2:$K$14")
  32.  
  33. Set MySr = .SeriesCollection.NewSeries
  34.     MySr.Name = "Wи5=f(M)"
  35.     MySr.XValues = Worksheets("Таблица").Range("$C$2:$C$14")
  36.     MySr.Values = Worksheets("Таблица").Range("$M$2:$M$14")
  37.  
  38. Set MySr = .SeriesCollection.NewSeries
  39.     MySr.Name = "Wи6=f(M)"
  40.     MySr.XValues = Worksheets("Таблица").Range("$C$2:$C$14")
  41.     MySr.Values = Worksheets("Таблица").Range("$O$2:$O$14")
  42.     
  43. Set MySr = .SeriesCollection.NewSeries
  44.     MySr.Name = "Wст=f(Мст)"
  45.     MySr.XValues = Worksheets("Таблица").Range("$A$17:$A$18")
  46.     MySr.Values = Worksheets("Таблица").Range("$B$17:$B$18")
  47.     
  48.     .ChartType = xlXYScatterSmoothNoMarkers
  49.     .Axes(xlValue).MinimumScale = -10
  50.     
  51.     .Axes(xlCategory, xlPrimary).HasTitle = True
  52.     .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "M, H*м"
  53.     .Axes(xlValue, xlPrimary).HasTitle = True
  54.     .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "W, рад/с"
  55.     .Axes(xlCategory, xlPrimary).MinorTickMark = xlOutside
  56.     ActiveChart.HasTitle = True
  57.     ActiveChart.ChartTitle.Characters.Text = "Графики механических характеристик"
  58.     .Location Where:=xlLocationAsObject, Name:="Лист1"
  59.     
  60. End With
  61. End Sub

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам