Страницы: 1
RSS
Итерация функции перенос кода с C# в VBA
 
Код
         do
            {
               A = (FunMat_Res(Ax, Bx, Cx_c));
               Cx_c = FunMat_param(Ax, Bx,  Cx);
                                              
               i++;
            }
      while (i <= 1000);

Помогите перенести данных код в VBA Excel.

FunMat это функции.  Нужно выполнить итерацию, в C# работает без проблем.  В VBA не получается повторить.

Изменено: Михаио z - 27.11.2022 01:28:25
 
Код
Do
    A = FunMat_Res(Ax, Bx, Cx_c)
    Cx_c = FunMat_param(Ax, 0, Bx, Cx)       
    i = i + 1
Loop While i <= 1000
Изменено: New - 27.11.2022 02:37:32
 
Цитата
написал:
Код
    [URL=#]?[/URL]       1  2  3  4  5      Do          A = FunMat_Res(Ax, Bx, Cx_c)          Cx_c = FunMat_param(Ax, 0, Bx, Cx)                 i = i + i    While   i <= 1000   
 
Ну тогда
Код
 Loop While 

Скобки я сам мог убрать. Проблема в том,  что итерации не происходит Результат равен одному прогону, хотя в VBA дебагере;
Код
 i = 1001
Изменено: Михаио z - 27.11.2022 01:49:18
 
у меня вот так работает. А что там делают ваши функции мы не знаем

Код
Sub Test()
    Dim i As Long

    Do
        i = i + 1
    Loop While i <= 5

    MsgBox "Конец", vbInformation, ""
End Sub

Хотите, перепишите на For Next

Код
Sub Test()
    Dim i As Long
    
    For i = 1 To 5
        
    Next i

    MsgBox "Конец", vbInformation, ""
End Sub
Изменено: New - 27.11.2022 14:29:49
 
Цитата
FunMat это функции
Я так понял, что переводом функции с C# на VBA у вас проблем не возникло?!
:D  
 
Цитата
Михаио z написал:
Проблема в том,  что итерации не происходит
Без функций FunMat и FunMat_params , разговор бессмыслен.  Если в самих функциях не заложен принцип итерационныго вычисления, то на вход FunMat подается один раз измненнный  Cx_c, который более не меняется собственно А получается тоже неизменным. Тогда вопрос. А чтоб ж было нужно?
По вопросам из тем форума, личку не читаю.
Страницы: 1
Наверх