Se puede validar opción de ComboBox?

EstimadosT, Tengoel siguiente código, el cual desde un Formulario al completar los campos los registrá en la hoja6.

Necesito su ayuda, para que evalue al elegir una de las opciones, que solo lo completado me registre, y si estan vacio segun la opción elegida, que lo informe, los ocultos que no tengan validez..

Les dejo el código, si ven algo para mejorar sera bienvenido !

También adjunto fotos del cuadro de opciones.


'scomprobar si el libro ya esta completo.
      Dim filallena As String
If Sheets("LV_PAMPA").Range("A13").Value <> Empty Then
    filallena = MsgBox("Planilla ya esta completa, desea enviar?", vbExclamation + vbDefaultButton2 + vbYesNo, "ERROR!")
    If filallena = vbNo Then Exit Sub
   Select Case filallena
Case vbYes 'Yes
Call Enviarplanillafletes_Click
Case vbNo
Exit Sub
End Select
End If
'botones de opciones
With Opti
Dim res1 As String
Dim res2 As String
If OptionButton1.Value = True Then
   res1 = "X"
End If
If OptionButton2.Value = True Then
   res2 = "X"
End If
End With
    Dim Svd As String
'Defina la hoja
Svd = Hoja6.Range("A" & Rows.Count).End(xlUp).Row + 1
'Esto significa que recorrerá desde la ultima celda vacia de abajo hasta arriba y los datos los colocará en la celda que encuentre vacia
Hoja6.Cells(Svd, 1) = FECHA1
Hoja6.Cells(Svd, 2) = res1
Hoja6.Cells(Svd, 3) = res2
Hoja6.Cells(Svd, 4) = fechadif
Hoja6.Cells(Svd, 5) = CODIGO
Hoja6.Cells(Svd, 6) = CLIENTE1
Hoja6.Cells(Svd, 7) = GRANO & CAMPANA
Hoja6.Cells(Svd, 8) = TONELADAS
Hoja6.Cells(Svd, 9) = PRECIO
Hoja6.Cells(Svd, 10) = AVISO
Hoja6.Cells(Svd, 11) = MODPAGO
Hoja6.Cells(Svd, 12) = CH1 & " " & CH2 & " " & CH3 & " " & NAVISA & " " & BANCOS & " " & trf & " " & CHEQUE
  MsgBox ("ok"), vbOKOnly, "OK!": CODIGO.SetFocus: Exit Sub
  End If
End Sub

1 respuesta

Respuesta
1

Falto parte del código, estoy desde el móvil.

Private Sub REGISTRAR_Click()
Application.EnableEvents = False
Application.ScreenUpdating = False
Application.DisplayAlerts = False
'cuadro de opciones ventas
For Each ctrl In Frame23.Controls
If TypeOf ctrl Is msforms.OptionButton Then
If ctrl.Value = True Then
             F1D = True
             Exit For
             End If
       End If
       Next ctrl
'si los campo estan vacios, dar informe..
If CODIGO = "" Then MsgBox ("Ingresar Codigo para avanzar"), vbCritical, "ERROR!": CODIGO.BorderColor = RGB(237, 28, 36): CODIGO.SetFocus: Exit Sub
    If GRANO = "" Then MsgBox ("¿Cual es el Producto?"), vbCritical, "ERROR!": GRANO.SetFocus: GRANO.BorderColor = RGB(237, 28, 36): Exit Sub
    If CAMPANA = "" Then MsgBox ("¿Cual es la campaña?"), vbCritical, "ERROR!": CAMPANA.SetFocus: CAMPANA.BorderColor = RGB(237, 28, 36): Exit Sub
    If F1D = False Then MsgBox ("no se selecciono tipo de venta"), vbCritical, "ERROR!": Frame23.SetFocus: Frame23.BorderColor = RGB(237, 28, 36): Exit Sub
    If TONELADAS = "" Then MsgBox ("¿Cuantas TN?"), vbCritical, "ERROR!": TONELADAS.SetFocus: TONELADAS.BorderColor = RGB(237, 28, 36): Exit Sub
    If TONELADAS < 0 Then MsgBox ("Cantidad de TN es inferior a 0"), vbCritical, "ERROR!": TONELADAS.SetFocus: TONELADAS.BorderColor = RGB(237, 28, 36): Exit Sub
    If Val(TONELADAS) = Text Then MsgBox ("Las tn no pueden ir en letras"), vbCritical, "ERROR!": TONELADAS.SetFocus: TONELADAS.BorderColor = RGB(237, 28, 36): Exit Sub
    If PRECIO = "" Then MsgBox ("¿Que precio se FIJO?"), vbCritical, "ERROR!": PRECIO.SetFocus: PRECIO.BorderColor = RGB(237, 28, 36): Exit Sub
    If MODPAGO = "" Then MsgBox ("¿Cual es medio de cobro?"), vbCritical, "ERROR!": MODPAGO.SetFocus: MODPAGO.BorderColor = RGB(237, 28, 36): Exit Sub
    If AVISO = "" Then MsgBox ("¿numero de aviso?"), vbCritical, "ERROR!": AVISO.SetFocus: AVISO.BorderColor = RGB(237, 28, 36): Exit Sub
    RPTA = MsgBox("¿SEGURO DESEA REGISTRAR ESTA VENTA ?", vbYesNo + vbQuestion)
    If RPTA = vbNo Then
    Else

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas