Buenos días:
Estoy trabajando con un formulario para registro de boletos, el cual adjunto; mi problema es que en dicho formulario tengo el combobox 1 donde carga la forma de pago " P, C, A, TV" y lo que necesito es que al seleccionar la forma de pago en el combobox 2 cargue el concepto del pago P = Pago A = anulado, etc , (tipo función buscar); este rango lo cargo desde mi hoja "EXTRAS" b1 al c6 , en mi mismo formulario en el combobox 2 cargo mi lista de clientes de la hoja "CLIENTES" pero al elegir la forma de pago no me permite continuar, lo que quiero es que al elegir por ejemplo P en el combobox1 en el combobox 2 me salga el texto PAGADO pero que tambien me permita elegir de mi lista de clientes , por si acaso el combobox 2 lo tengo bloqueado para que solo me permita elegir de mi lista y no permita ingresar mediante teclado otro texto.
Ayuda por favor y gracias por su tiempo
Saludos
Jesús Martínez
Adjunto | Tamaño |
---|---|
caja.xlsm | 165.85 KB |
Tienes el código este:
Private Sub ComboBox1_change()
'Carga textbox segun forma de pago
Set c = Sheets("EXTRAS").Range("b1:b7").Find(ComboBox1)
If Not c Is Nothing Then
ComboBox2 = Sheets("EXTRAS").Range("c" & b.Row)
End If
End Sub
Estimado Cron, funciona el archivo que me mandaste pero al momento de darle click en el boton para registrar me sale el siguiente mensaje de error :
Saludos cordiales
Jesús
Jesus Martinez Plantarosa
Bueno, de hecho funciona bien salvo que el combobox está mal definido.
Si seleccionas cualquier opción, el formulario funciona, excepto si seleccionas la opción FP en el primer combobox (el combobox1). Pero es que FP no es una opción, es el título de la tabla en la pestaña "EXTRAS".
Creo que el error está en la definición, es decir, aquí:
Private Sub UserForm_Activate()
ComboBox4.RowSource = "LA"
ComboBox5.RowSource = "EP"
p = Sheets("CLIENTES").Range("C1").End(xlDown).Row
ComboBox2.RowSource = "CLIENTES!c2:c" & p
F = Sheets("EXTRAS").Range("B1").End(xlDown).Row
ComboBox1.RowSource = "EXTRAS!B1:B" & F
End Sub
Modifique como me indicaste pero me sigue saliendo el mismo mensaje de error, cuando le doy click en el boton registrar.
Saludos
Jesús
Jesus Martinez Plantarosa
Al darle al botón registrar (no había llegado hasta ahí), lo que sucede es que no hay nada en el textbox14. Sin embargo, en tu código estás intentando convertir nada en un número de tipo doble, con lo que te da un error de tipos. Solo se puede convertir en Doble otro número que sea de otro tipo, por ejemplo, un entero corto.
Pero el error que me salta a mí es el 13. Debes asegurarte de que cuando introduces los valores en las casillas de "bolivianos", se calculan los valores de las casillas "dólares". Alternativamente, puedes capturar el error en el código, de manera que antes de hacer la conversión, compruebes que hay un número en la casilla, y entonces lo conviertes. Si no, pues simplemente te saltas la celda. También puedes capturar el error, y si ocurre borras la fila de datos, pues también he comprobado que al darse el error, termina la fila con datos a medias.
Además, he reproducido otro error, que se deriva del formato que le pones a los números. Si pones un valor superior a 1000 en una casilla, automáticamente se formatea como 1,000.00. Esto puede generar errores si mi ordenador tiene configurada la "," como valor decimal, de manera que si pongo 1000 en la casilla, el total será 1.
Un saludo
Gracias por las observaciones, y las recomendaciones, capoooo. Voy a revisar nuevamente mis códigos y te escribo.
saludos cordiales
Jesús
Jesus Martinez Plantarosa