¿Como puedo ajustar este código?
He hecho este código
Private Sub cmdcalc_Click()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim Ncond_Ini As Range
Dim Vitem_Ini As Range
Dim Vins_Ini As Range
Dim Evn_Ini As Range
Set Ncond_Ini = Range("A4")
Set Vitem_Ini = Range("T3")
Set Vins_Ini = Range("E4")
Set Evn_Ini = Range("A4")
'
Ncond = Ncond_Ini.Value
Vitem = Vitem_Ini.Value
Vins = Vins_Ini.Value
Evn = Evn_Ini.Select
Set h = ActiveSheet
'
For i = 4 To h.Range("A" & Rows.Count).End(xlUp).Row 'Se inicia desde la fila 4 y se va hasta la última fila con datos
If Ncond <> 1 Then 'Ncond siempre será un dato de la Columna A y si este dato es diferente de 1...
Evn = ActiveCell.Offset(0, 18).Select 'Se ira a la Columna S y hará una pegara el resultado de una multiplicacion
Resl = Vins * Vitem 'Acá se multiplican las variables cuyos datos se extraen de las columnas E y T respectivamente
ActiveCell = Resl
' En toda esta sección se actualizan la variables para hacer el mismo proceso anterior con la fila siguiente
Set Ncond_Ini = Ncond_Ini.Offset(1, 0)
Set Vins_Ini = Vins_Ini.Offset(1, 0)
Set Evn_Ini = Evn_Ini.Offset(1, 0)
Ncond = Ncond_Ini.Value
Vitem = Vitem_Ini.Value
Vins = Vins_Ini.Value
Evn = Evn_Ini.Select
Else 'Si el valor de la columna A es 1 solo se actualizan los datos para hacer el mismo proceso con la fila siguiente
Set Ncond_Ini = Ncond_Ini.Offset(1, 0)
'Set Vitem_Ini = Vitem_Ini.Offset(1, 0)
Range("T27").Select 'Esta linea y la siguiente son las que debo modificar
Selection.End(xlDown).Select
Set Vins_Ini = Vins_Ini.Offset(1, 0)
Set Evn_Ini = Evn_Ini.Offset(1, 0)
Ncond = Ncond_Ini.Value
Vitem = Vitem_Ini.Value
Vins = Vins_Ini.Value
Evn = Evn_Ini.Select
End If
Next i
Application.ScreenUpdating = True
Application.DisplayAlerts = TrueLa razón por la que debo corregir las lineas que mencione en el código es que cada vez que el valor de la Columna "A" sea 1 se debe hacer la función equivalente a Ctrl + Flecha abajo para que los Vins se multipliquen con el Vitem que les corresponde, tratare de explicarme con las siguiente imagen

La idea que los datos de la Columna E se multipliquen por los de la columna T, si se fijan en la columna V les muestro el resultado esperado, y en la columna X una formula con la que les ejemplifico como es la multiplicación. Entonces en la imagen podrán ver que si A4 es diferente de 1, E4 se multiplicara con T3 y así hasta llegar a A8 (en este caso) ya que A9 (aunque no se vea) es 1, por lo cual debe hacer caso omiso y seguir a A10 con el cual se hará la misma formula solo que está vez en caso de que se cumpla la condición se multiplicara con T9 y así sucesivamente (adjunto el archivo para que ustedes mismos vean como trabaja) Este es el archivo
El problema es que como tengo planteada las 2 lineas problemas siempre se trabajara con T9. Espero lograr transmitir mi problema con claridad, en caso de que necesiten más claridad tratare de dárselas.
Nota: Cuando en la Columna A aparece un 1, inmediatamente se debe pasar a multiplicar con el siguiente, pues como verán en la siguiente imagen cuando hay un 1 en la Columna A, aparece un nuevo valor en la Columna T

Nota 2: En el archivo que adjunte verán 2 hojas, una en la que ya corrí la macro (Esta hoja se llama Inf) y les muestro el resultado de la macro(El resultado es el de la Columna S en las celdas pintadas) y les muestro el resultado esperado (Que es el de la Columna V (Este resultado esperado lo hice con la formula, la cuál también les puede ayudar para tener mejor claridad)). Y la hoja 2 (llamada Inf (Limpia) es para que ustedes mismo ejecuten la macro con el Botón que allí se ve.
