Страница 2 из 2
Добавлено: 26 сен 2005, 03:46
Zhanibek
Zhanibek, Возможно причина кроется именно в массиве, так как после некоторых тестов я пришёл к выводу, что существует некоторое ограничение, которое связано с общим количеством символов в этом массиве …
Voobshe programma svyazana s razrabotkoi neftyanuh mestorozhdenii. Eto analiz rezul'tatov testirovania skvazhin.
Periodicheski zameryaetsya davlenie cherez nekotorye neravnye promezhutki vremeni (obychno 20-30 zamerov).
Tak chto vryad li eto svyazano s razmerom massiva. Kogda cherez "add watch" smotru pered peredachei znachenii v diagrammu, on normal'no pokazivaet vse znachenia massiva.
Vopros ostaetsya otkrytym...
Добавлено: 26 сен 2005, 13:32
pashulka
IMHO Область применения особого значения не имеет … а в своём предыдущем сообщении я говорил именно о количестве символов, которые содержат все элементы массива. И для уточнения моего предположения, предлагаю протестировать оба примера, где размерность массива одинакова, но при этом второй вариант непременно должен вызвать ошибку.
Код: Выделить всё
Dim iMassivOne(1 To 50) As Integer
Dim iMassivTwo(1 To 50) As Integer
For iCount = 1 To 50
iMassivOne(iCount) = iCount
iMassivTwo(iCount) = iCount * 0.5
Next
With Workbooks.Add(xlWBATChart).Charts(1)
.ChartType = xlXYScatterSmooth
With .SeriesCollection.NewSeries
.XValues = iMassivOne
.Values = iMassivTwo
End With
End With
Код: Выделить всё
Dim iMassivOne(1 To 50) As Integer
Dim iMassivTwo(1 To 50) As Integer
For iCount = 1 To 50
iMassivOne(iCount) = iCount
iMassivTwo(iCount) = iCount * 125
Next
With Workbooks.Add(xlWBATChart).Charts(1)
.ChartType = xlXYScatterSmooth
With .SeriesCollection.NewSeries
.XValues = iMassivOne
.Values = iMassivTwo
End With
End With
Добавлено: 26 сен 2005, 16:01
Zhanibek
IMHO Область применения особого значения не имеет … а в своём предыдущем сообщении я говорил именно о количестве символов, которые содержат все элементы массива. И для уточнения моего предположения, предлагаю протестировать оба примера, где размерность массива одинакова, но при этом второй вариант непременно должен вызвать ошибку.
Absolutno verno, ne rabotaet. Vozmozhno, eto i est' prichina moei problemy, poskol'ku ya obyavil kak variant a v massive DT_Range u menya drobi so mnogimi znakami posle zapyatoi.
Ya pravil'no ponyal ideu?
I est' li gotovaya funkcia okruglenia do kakogo-to znaka?
Добавлено: 26 сен 2005, 17:00
pashulka
Именно так, чем больше символов содержит каждый элемент массива, тем меньшую размерность должен иметь массив. Однако, даже если у нас будет массив, где наличествуют целые числовые значения, например {1;2;3;4;5;...80} то даже в этом случае число элементов массива не сможет превышать 100.
Можно использовать стандартные функции рабочего листа, например =ОКРУГЛ()/=ROUND() P.S. В VB6 появилась функция с аналогичным названием, но не смотря на это у неё есть свои особенности, которые несколько расходятся с привычным "школьным округлением"
P.S. При ответе на предыдущее сообщение цитировать его вовсе не обязательно.
Добавлено: 28 сен 2005, 07:30
Zhanibek
Pitalsya okruglyat' do 2 znakov...
To zhe samoe
Добавлено: 28 сен 2005, 19:37
Naeel Maqsudov
К сожалению, я сейчас не имею возможности более подробно вникнуть в саму задачу, но есть подозрение, что Вы зря связались с макросами и формами.
Вполне можно было бы обойтись макросами, которые автоматизируют процесс написания формул. Да и если данные для диаграммы берутся из ячеек, то нет никаких ограничений....