Hola, tengo que realizar un calculo con Vba sin usar las celdas del excel, este calculo seria el siguiente, en el siguiente form:
En el contenedor de la izquierda tengo dos datos numerados hasta el 5...códigos de los item y la cantidad de ellos que me hace falta.
En el contenedor de la derecha tengo la siguiente dinamica... codigo del item, "los kilos" (se se calculan multiplicando el n°envases por el peso de los mismos, menos el sobrante), los N° envases, el peso de cada envase y el sobrante de cada item.
el caso es que he intentado realizar esta tarea ... pero no doy con la solución, intente con este código:
For Each ctrl In Me.Controls
If TypeName(ctrl) = "TextBox" Then
If InStr(1, ctrl.Name, "CnV") > 0 And ctrl.Text <> "" Then
If CDbl(Controls(ctrl.Name).Value) = Cn1 Then
DesV1 = KilosF1 + (DeVT1 + KgC1)
End If
If CDbl(Controls(ctrl.Name).Value) = Cn2 Then
DesV2 = KilosF2 + (DeVT2 + KgC1)
End If
If CDbl(Controls(ctrl.Name).Value) = Cn3 Then
DesV3 = KilosF3 + (DeVT3 + KgC1)
End If
If CDbl(Controls(ctrl.Name).Value) = Cn4 Then
DesV4 = KilosF4 + (DeVT4 + KgC1)
End If
If CDbl(Controls(ctrl.Name).Value) = Cn5 Then
DesV5 = KilosF5 + (DeVT5 + KgC1)
End If
End If
Next ctrl
pero no consigo el dinamismo que necesito...es decir, cuando indique el código del item y agregue la cantidad de envases y los kilos de estos (y el sobrante si aplica)... la cantidad de kilogramos obtenida debe sumarse a la cantidad mostrada en negativo en el contenedor de la izquierda, y así con cada item agregado en el contenedor de la derecha.
Hola, tengo que realizar un calculo con Vba sin usar las celdas del excel, este calculo seria el siguiente, en el siguiente form:
En el contenedor de la izquierda tengo dos datos numerados hasta el 5...códigos de los item y la cantidad de ellos que me hace falta.
En el contenedor de la derecha tengo la siguiente dinamica... codigo del item, "los kilos" (se se calculan multiplicando el n°envases por el peso de los mismos, menos el sobrante), los N° envases, el peso de cada envase y el sobrante de cada item.
el caso es que he intentado realizar esta tarea ... pero no doy con la solución, intente con este código:
For Each ctrl In Me.Controls If TypeName(ctrl) = "TextBox" Then If InStr(1, ctrl.Name, "CnV") > 0 And ctrl.Text <> "" Then If CDbl(Controls(ctrl.Name).Value) = Cn1 Then DesV1 = KilosF1 + (DeVT1 + KgC1) End If If CDbl(Controls(ctrl.Name).Value) = Cn2 Then DesV2 = KilosF2 + (DeVT2 + KgC1) End If If CDbl(Controls(ctrl.Name).Value) = Cn3 Then DesV3 = KilosF3 + (DeVT3 + KgC1) End If If CDbl(Controls(ctrl.Name).Value) = Cn4 Then DesV4 = KilosF4 + (DeVT4 + KgC1) End If If CDbl(Controls(ctrl.Name).Value) = Cn5 Then DesV5 = KilosF5 + (DeVT5 + KgC1) End If End If Next ctrl
pero no consigo el dinamismo que necesito...es decir, cuando indique el código del item y agregue la cantidad de envases y los kilos de estos (y el sobrante si aplica)... la cantidad de kilogramos obtenida debe sumarse a la cantidad mostrada en negativo en el contenedor de la izquierda, y así con cada item agregado en el contenedor de la derecha.
Quedo atento a sus comentarios...
descontar.xlsm