Chequear si existe el nombre y mencioar con un MsgBox

Como está Elsa, espero que bien y que Dios le otorgue los éxitos deseados.

Le envío un otro libro para ver si me puede resolver el inigma que existe en el.

En la hoja2 está descripto lo que pretendo. Si algo no especifico, hágame llegar su duda o interrugante

Respuesta
1

Al hacer mi primer prueba dejando el campo producto vacío salta el mensaje ya que encuentra celdas vacías en col B.

Por lo que debes agregar estas líneas antes de la evaluación:

''''''''''''''
'EM: si el campo texto queda vacío no avanza
    If txtProd = "" Then
        MsgBox "Ingrese nombre de producto para avanzar.", vbOKOnly, "ATENCIÓN"
        Exit Sub
    End If
 'luego sigue ésta;   
    If Application.CountIf(ActiveSheet.Range("B2:B50000") ----------

El otro inconveniente que observo es que se crea un registro aunque el resto de los campos queden vacíos. Quizás esto no sea un problema para tí ... como desconozco el resto de los procesos solo te hago la observación.

Sdos,

Hola Elsa, Buenas tardes

Bueno, el cas oes que si al ingresar nuevo (1º button del formulario), 1º tengo que seleccionar hoja para destino. 2º relleno (obligatorio) todos los Textbox.

Al rellenar las cajas de texto y repito un código que ya exista, al pisar el (1º) button, me edita la línea correspondiente al código repetido, queda el mismo código pero lo demás la edita colocando lo que contien los TextBox.

Si pudieras hacer la prueba Abriendo el fiorm de Artículos y selecciona la hoja CAT (es la que menos contenido tiene).

Rellena TODOS los textbox y en el cod Producto colcoa uno que ya exista.

A los demás textbox escribe lo que tu quieras.

Visualiza la línea del cod Producto que repetiste y veras que no ha acrecimo de producto si no que te edita las columnas B, C, DE, ETC.

No debería hacerlo si repito el código, escribo nuevo nombre (que es la idea no tener nombres repetidos.

Cod Producto si puede haber repetidos así las demás celdas de columnas MENOS la B que son los nombres.

En dar de alta un peoducto si el nombre existe ya, debe saltar un mensaje

MsgBox = "este nombre ya existe" Aceptar Sale de la macro, limpiando SOLO el TextBox Nombre producto.

No se si fui claro o algo falta esclarecer.

Es que la idea es que llenes TODOS TextBox del form si no te salta mensaje, eso es así y lo veo muy bien

¿Si miras la imagen verás que lo probé y te agregue las instrucciones que faltaban... lo probaste?

M parece que no tiene ninguna línea para que obligue a llenar TODOS textbox si alguno de ellos está vacío por descuido.

En el pedazo de macro que me dejaste ¿se podrían meter todos TextBox para que ninguno quedara vacío por descuido?, creo yo

Y si. Esa fue mi observación en respuesta anterior. Debieran controlarse los campos obligatorios. Te dejare uno en el libro y el resto te lo dejo para que los completes.

Sdos!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas