Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/как выглядит вызов функции (call func1(a,b,c)) если b-массив - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » как выглядит вызов функции (call func1(a,b,c)) если b-массив (как выглядит вызов функции)
как выглядит вызов функции (call func1(a,b,c)) если b-массив
emiljan Дата: Пятница, 15.11.2013, 12:21 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Всем доброго дня!
Пытаюсь написать программу для подбора насоса к скважине, но суть не в этом. В программе необходимо работать с массивами. Так вот, я совсем запутался, нужно ли при вызове функции (т. е. call func(a,b,c)) если один из элементов- статический массив ,например b(), ставить скобки рядом с массивом? пытался разными способами, пограмма то выдает ошибки, то просто не выдает результат. а также наверняка много других ошибок...У меня уже есть готовая программа, если не трудно, подскажите, где и какие принципиальные ошибки, потому что недели 2 сижу на одном месте... Программа во вложении
К сообщению приложен файл: 5192465.xls (95.5 Kb)
 
Ответить
СообщениеВсем доброго дня!
Пытаюсь написать программу для подбора насоса к скважине, но суть не в этом. В программе необходимо работать с массивами. Так вот, я совсем запутался, нужно ли при вызове функции (т. е. call func(a,b,c)) если один из элементов- статический массив ,например b(), ставить скобки рядом с массивом? пытался разными способами, пограмма то выдает ошибки, то просто не выдает результат. а также наверняка много других ошибок...У меня уже есть готовая программа, если не трудно, подскажите, где и какие принципиальные ошибки, потому что недели 2 сижу на одном месте... Программа во вложении

Автор - emiljan
Дата добавления - 15.11.2013 в 12:21
KuklP Дата: Пятница, 15.11.2013, 12:26 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеКросс:
http://www.excel-vba.ru/forum/index.php?topic=2561.0

Автор - KuklP
Дата добавления - 15.11.2013 в 12:26
SkyPro Дата: Пятница, 15.11.2013, 12:27 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
Функция возвращает какое-либо значение.
Т.е. полученное значение нужно записывать в переменную, или выводить куда-либо.
[vba]
Код
Sub fnc ()
Dim x, z, i
x = myFunc(2,4)
debug.print myFunc(2,4)
Redim z(1 to 10)
for i = 1 to 10
z(i) = 2 * rnd
next
Debug.print myarrfunc(z)
end sub

Function myFunc(a,b)
myFunc = a * b
end function

'для массивов
Function myArrFunc(byval ar())
Dim i&
For i = lbound(ar) to ubound(ar)    
myarrfunc = ar(i) + myarrfunc ' одномерный массив
next
[/vba]

Опишите словами и обычными мат. операцияи, что должны делать ваши функции и ваша программа.


skypro1111@gmail.com

Сообщение отредактировал SkyPro - Пятница, 15.11.2013, 13:10
 
Ответить
СообщениеФункция возвращает какое-либо значение.
Т.е. полученное значение нужно записывать в переменную, или выводить куда-либо.
[vba]
Код
Sub fnc ()
Dim x, z, i
x = myFunc(2,4)
debug.print myFunc(2,4)
Redim z(1 to 10)
for i = 1 to 10
z(i) = 2 * rnd
next
Debug.print myarrfunc(z)
end sub

Function myFunc(a,b)
myFunc = a * b
end function

'для массивов
Function myArrFunc(byval ar())
Dim i&
For i = lbound(ar) to ubound(ar)    
myarrfunc = ar(i) + myarrfunc ' одномерный массив
next
[/vba]

Опишите словами и обычными мат. операцияи, что должны делать ваши функции и ваша программа.

Автор - SkyPro
Дата добавления - 15.11.2013 в 12:27
RAN Дата: Пятница, 15.11.2013, 14:43 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
По порядку номеров...

[vba]
Код
Function compressibility_factor(ByVal j As Integer, Pср, ByVal Pнас As Double, ByVal ro_гсу As Double, ByVal yа As Double, ByVal z_out As Double)
[/vba]
используется как процедура, а не как функции. Так и записывайте соответственно.

[vba]
Код
Sub compressibility_factor(ByVal j As Integer, Pср, ByVal Pнас As Double, ByVal ro_гсу As Double, ByVal yа As Double, ByVal z_out As Double)
[/vba]
По массивам - вот вам кошки, тренируйтесь. :)

[vba]
Код
Sub qq()
     Dim a()
     a = Array(1, 2, 3)
     Call qqq(a())
     aa = a
     Stop
End Sub
Sub qqq(z)
     For i = 0 To 2
         z(i) = z(i) * 2
     Next
End Sub
[/vba]


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеПо порядку номеров...

[vba]
Код
Function compressibility_factor(ByVal j As Integer, Pср, ByVal Pнас As Double, ByVal ro_гсу As Double, ByVal yа As Double, ByVal z_out As Double)
[/vba]
используется как процедура, а не как функции. Так и записывайте соответственно.

[vba]
Код
Sub compressibility_factor(ByVal j As Integer, Pср, ByVal Pнас As Double, ByVal ro_гсу As Double, ByVal yа As Double, ByVal z_out As Double)
[/vba]
По массивам - вот вам кошки, тренируйтесь. :)

[vba]
Код
Sub qq()
     Dim a()
     a = Array(1, 2, 3)
     Call qqq(a())
     aa = a
     Stop
End Sub
Sub qqq(z)
     For i = 0 To 2
         z(i) = z(i) * 2
     Next
End Sub
[/vba]

Автор - RAN
Дата добавления - 15.11.2013 в 14:43
emiljan Дата: Суббота, 16.11.2013, 14:20 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Опишите словами и обычными мат. операцияи, что должны делать ваши функции и ваша программа.

Суть заключается в том, чтобы определить соотвествие давления в нефтяной скважине в любой ее точке (т.е. на любой глубине) и глубины с таким давлением-Распределение давления вдоль ствола эксплуатационной колонны. (грубо говоря, давление возрастает по мере приближения к центру земли:))Т. о., ствол скважины разбивается на n-е количество участков (например, глубина скважины 2008 метров , разбиваем на 20 участков по 100,4 метра каждый) и на конце каждого участка получаем в результате определенных расчетов искомое давление. То есть, зная давление в самом низу скважины(забойное)- P1, зная глубину скважины L1 и разбивая ствол скважины на участки по 100.4 метра (таким образом L2=L1-100,4) цель- рассчитать давление P2. Это и должна считать моя программа. Ключевая функция -P_and_T, которая рассчитывает P2,P3 и т.д.:
Pср(j) = dP_dL * deltaL - Pср(j - 1), где deltaL=100.4 метра,dP_dL=градиент давления
Функция градиента давления вызывает другие функции(параметры нефтяного потока в данной точке) и производит рассчет. Затем все операции повторяются по мере продвижения от забоя скважины к поверхности( устью).
 
Ответить
Сообщение
Опишите словами и обычными мат. операцияи, что должны делать ваши функции и ваша программа.

Суть заключается в том, чтобы определить соотвествие давления в нефтяной скважине в любой ее точке (т.е. на любой глубине) и глубины с таким давлением-Распределение давления вдоль ствола эксплуатационной колонны. (грубо говоря, давление возрастает по мере приближения к центру земли:))Т. о., ствол скважины разбивается на n-е количество участков (например, глубина скважины 2008 метров , разбиваем на 20 участков по 100,4 метра каждый) и на конце каждого участка получаем в результате определенных расчетов искомое давление. То есть, зная давление в самом низу скважины(забойное)- P1, зная глубину скважины L1 и разбивая ствол скважины на участки по 100.4 метра (таким образом L2=L1-100,4) цель- рассчитать давление P2. Это и должна считать моя программа. Ключевая функция -P_and_T, которая рассчитывает P2,P3 и т.д.:
Pср(j) = dP_dL * deltaL - Pср(j - 1), где deltaL=100.4 метра,dP_dL=градиент давления
Функция градиента давления вызывает другие функции(параметры нефтяного потока в данной точке) и производит рассчет. Затем все операции повторяются по мере продвижения от забоя скважины к поверхности( устью).

Автор - emiljan
Дата добавления - 16.11.2013 в 14:20
emiljan Дата: Понедельник, 16.12.2013, 12:07 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 6
Репутация: 0 ±
Замечаний: 0% ±

Excel 2003
Спасибо, вопрос решен!
 
Ответить
СообщениеСпасибо, вопрос решен!

Автор - emiljan
Дата добавления - 16.12.2013 в 12:07
Мир MS Excel » Вопросы и решения » Вопросы по VBA » как выглядит вызов функции (call func1(a,b,c)) если b-массив (как выглядит вызов функции)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!