Страницы: 1
RSS
VBA
 
Кто может помочь как табулируются функции в вба?полезный материал подкиньте
 
эм, я не очень хорошо разбираюсь в этих вопросах, а что такое "табулируется" ? Это не от клавиши TAB случайно?
 
Гм.. что-то такое знакомое..:) Это случайно не трассировка функции с заданным шагом аргумента? Если да, то оператор For..Step...Next вам в помощь.
 
Вот дана функция y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Надо про табулировать функцию если заданы начальное значение аргумента данной функции а , шаг изменения аргумента и b  и число шагов n. Надо наити значение функции в n  точках: a  
a+b  
a+2*b
 
{quote}{login=jst}{date=25.10.2008 08:30}{thema=Есди кто знает подскажите}{post}Вот дана функция y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Надо про табулировать функцию если заданы начальное значение аргумента данной функции а , шаг изменения аргумента и b  и число шагов n. Надо наити значение функции в n  точках: a  
a+b  
a+2*b{/post}{/quote}  
В данном случае "протабулировать" - вывести соответствующие значения аргумента и функции на экран?
 
{quote}{login=Raptor}{date=25.10.2008 09:12}{thema=Re: Есди кто знает подскажите}{post}{quote}{login=jst}{date=25.10.2008 08:30}{thema=Есди кто знает подскажите}{post}Вот дана функция y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Надо про табулировать функцию если заданы начальное значение аргумента данной функции а , шаг изменения аргумента и b  и число шагов n. Надо наити значение функции в n  точках: a  
a+b  
a+2*b{/post}{/quote}  
В данном случае "протабулировать" - вывести соответствующие значения аргумента и функции на экран?{/post}{/quote}  
вроде так  получается а как пошагово протабулировать
 
Вот так например:  
Sub Табуляция()  
Dim a#,n&,b#  
a = ...  
n = ...  
b = ...  
For arg = a To a + b*n Step b  
[a1].Offset((arg - a)/b) = arg
[a1].Offset((arg - a)/b, 1) = (2 * arg ^ 2 + 3 * arg - Sqr(arg ^ 2 - 1)) / (arg ^ 2 - 4)
Next  
End Sub
 
{quote}{login=Raptor}{date=25.10.2008 10:31}{thema=}{post}Вот так например:  
Sub Табуляция()  
Dim a#,n&,b#  
a = ...  
n = ...  
b = ...  
For arg = a To a + b*n Step b  
[a1].Offset((arg - a)/b) = arg
[a1].Offset((arg - a)/b, 1) = (2 * arg ^ 2 + 3 * arg - Sqr(arg ^ 2 - 1)) / (arg ^ 2 - 4)
Next  
End Sub{/post}{/quote}  
а может ты мне напишешь полностью по заданию а то частично мне сложно понять я же все написала  так вот  если не сложно сделай
 
Sub esimene()  
'  
' esimene Macro  
' Macro recorded 24.10.2008 by www.PHILka.RU  
'  
 
'  
   Range("B5").Select  
   ActiveCell.FormulaR1C1 = "X"  
   Range("C5").Select  
   ActiveCell.FormulaR1C1 = "Y"  
   Range("B5:C5").Select  
   With Selection  
       .HorizontalAlignment = xlCenter  
       .VerticalAlignment = xlBottom  
       .WrapText = False  
       .Orientation = 0  
       .AddIndent = False  
       .IndentLevel = 0  
       .ShrinkToFit = False  
       .ReadingOrder = xlContext  
       .MergeCells = False  
   End With  
   Range("B6").Select  
End Sub  
Sub algandmed()  
Dim Sammude_arv As Integer  
x_alg = InputBox("Ââåñòè íà÷àëüíîå çíà÷åíèå Õ", "Ââîä çíà÷åíèÿ", 0)  
MsgBox "Âû ââåëè íà÷àëüíîå çíà÷åíèå X = " & x_alg, , " Info "  
Cells(1, 2) = x_alg  
End Sub  
 
Sub Sag()  
Dim Sammude_arv As Integer  
x_sag = InputBox("Ââåñòè øàã èçìåíåíèÿ àðãóìåíòà Õ", "Ââîä øàãà", 0)  
MsgBox "Âû ââåëè øàã èçìåíåíèÿ àðãóìåíòà Õ = " & x_sag, , " Info "  
Cells(2, 2) = x_sag  
End Sub  
 
Sub kolisestvo()  
Dim Sammude_arv As Integer  
n_kolisestvo = InputBox("Ââåñòè ÷èñëî øàãîâ n", "Ââîä øàãà", 0)  
MsgBox "Âû ââåëè øàã èçìåíåíèÿ àðãóìåíòà n = " & n_kolisestvo, , " number "  
Cells(3, 2) = n_kolisestvo  
 
End Sub  
Sub Arvutamine()  
x_alg = Cells(1, 2)  
X = x_alg  
If X ^ 2 < 1 Then  
Cells(6, 3) = "kompleksarv"  
Else  
y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Cells(6, 3) = y  
End If  
Cells(6, 2) = X  
If ABC(X) = 2 Then  
Cells(6, 3) = "nulliga jagamine"  
Else  
y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Cells(6, 3) = y  
End If  
End Sub  
Вот мое начало я просто незнаю как дальше задать чтобы автоматически вычисляло значения Х по шагам и соотвествующие Х значения Y
 
)))) вот Раптору подвезло)) он палец, а ему уже руку, ногу и хвост уже заглатывают )  
 
Raptor, держись! Мы с тобой! )
 
2jst  
Прочитал ваш пост 5(!) раз. Не врубился и с 5-го)
 
{quote}{login=}{date=25.10.2008 11:50}{thema=}{post})))) вот Раптору подвезло)) он палец, а ему уже руку, ногу и хвост уже заглатывают )  
 
Raptor, держись! Мы с тобой! ){/post}{/quote}  
Смотрю на аватар - рук не было изначально, хвост благоразумно спрятан, ноги пока целы :-)
 
Raptor, а с вопросами от девушек всегда так ))  
 
P.S. да простит меня прекрасный пол )
 
Sub esimene()  
'  
' esimene Macro  
'  
'  
 
'  
Range("B5").Select  
ActiveCell.FormulaR1C1 = "X"  
Range("C5").Select  
ActiveCell.FormulaR1C1 = "Y"  
Range("B5:C5").Select  
With Selection  
.HorizontalAlignment = xlCenter  
.VerticalAlignment = xlBottom  
.WrapText = False  
.Orientation = 0  
.AddIndent = False  
.IndentLevel = 0  
.ShrinkToFit = False  
.ReadingOrder = xlContext  
.MergeCells = False  
End With  
Range("B6").Select  
End Sub  
Sub algandmed()  
Dim Sammude_arv As Integer  
x_alg = InputBox("; X = " & x_alg, , " Info "  
Cells(1, 2) = x_alg  
End Sub  
 
Sub Sag()  
Dim Sammude_arv As Integer  
x_sag = InputBox(";", 0)  
MsgBox "; = " & x_sag, , " Info "  
Cells(2, 2) = x_sag  
End Sub  
 
Sub kolisestvo()  
Dim Sammude_arv As Integer  
n_kolisestvo = InputBox(";", 0)  
MsgBox "; n = " & n_kolisestvo, , " number "  
Cells(3, 2) = n_kolisestvo  
 
End Sub  
Sub Arvutamine()  
x_alg = Cells(1, 2)  
X = x_alg  
If X ^ 2 < 1 Then  
Cells(6, 3) = "kompleksarv"  
Else  
y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Cells(6, 3) = y  
End If  
Cells(6, 2) = X  
If ABC(X) = 2 Then  
Cells(6, 3) = "nulliga jagamine"  
Else  
y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Cells(6, 3) = y  
End If  
End Sub
 
никого не заставляю если можете напишите последний пункт
 
Значится так. Нету полностью озвученного задания - нету и желаемого решения. Ваш макрос мне ни о чем не говорит - ни первый, ни последний пункты.
 
{quote}{login=Юрий М}{date=26.10.2008 12:13}{thema=Re: }{post}{quote}{login=}{date=25.10.2008 11:50}{thema=}{post})))) вот Раптору подвезло)) он палец, а ему уже руку, ногу и хвост уже заглатывают )  
 
Raptor, держись! Мы с тобой! ){/post}{/quote}  
Смотрю на аватар - рук не было изначально, хвост благоразумно спрятан, ноги пока целы :-){/post}{/quote}  
 
))) вот! руки и хвост уже сгрызла )) остались лишь ноги ), но Раптор уверенно держит натиск )
 
Судя по языку комментариев, девушка из Эстонии.  
Попробуем помочь.  
В приложении - пример табулирования функции.  
Для ввода использовал InputBox, как и в исходном коде.
 
Вот эти 3 строчки кода нужно закомментировать или удалить:  
If a = "" Then Exit Sub  
If b = "" Then Exit Sub  
If n = "" Then Exit Sub
 
Вот дана функция y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Надо про табулировать функцию если заданы начальное значение аргумента данной функции а , шаг изменения аргумента и b и число шагов n. Надо наити значение функции в n точках:    
a  
a+b  
a+2*b
 
If X ^ 2 < 1 Then  
Cells(6, 3) = "kompleksarv"  
Else  
y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Вроде так если  меньше единицы то пишется что это коплексное число в противном случает вычисляется у по той же функции
 
{post}Вот дана функция y = (2 * X ^ 2 + 3 * X - Sqr(X ^ 2 - 1)) / (X ^ 2 - 4)  
Надо про табулировать функцию если заданы начальное значение аргумента данной функции а , шаг изменения аргумента и b и число шагов n. Надо наити значение функции в n точках:    
a  
a+b  
a+2*b{/post}{/quote}  
Вариант табулирования я уже изложил в одном из вышеприведенных постов, правда без учета ошибок вычисления функции. К сожалению, не владею такими познаниями и эстетизмом, как уважаемый ZVI, поэтому предлагаю доработанный вариант а ля "дешево и сердито":)
 
Заменил "n/a" (подразумевалось "not available") на "kompleksarv".  
Остальное то устраивает? Если нет, то вылолжите файл, в котором вручную запишите, что нужно получить в результате.
 
все устраивает просто вопрос это соотвествует условию задания  как у меня написано пошагово а, A+H, A+N*H. отдельное спасибо и за это
 
Конечно, соответствует и в варианте Raptor-а, и в моем.  
Это легко проверить калькулятором или формулами в Excel-e.    
Если что-то не так, то лучше выложите Excel файл с просчитанными вручную данными, которые бы Вы хотели получить в итоге.
 
возникает а как вообще строится умл по данному примеру
 
{quote}{login=ZVI}{date=26.10.2008 08:04}{thema=}{post}Конечно, соответствует и в варианте Raptor-а, и в моем.  
Это легко проверить калькулятором или формулами в Excel-e.    
Если что-то не так, то лучше выложите Excel файл с просчитанными вручную данными, которые бы Вы хотели получить в итоге.{/post}{/quote}  
 
Снова поднимаю эту тему, ув. ZVI как переписать это для функции ln(Sqr(Exp(x - 1)))  
 
Всё никак не получается, не с твоим вариантом, не с раптора, постоянно пишет что SUB or Funktion undefined. Хотя я задавал её разными спобами, может просто не правильно записана?
Страницы: 1
Читают тему
Наверх