Excel Avanzado

Macros, Vba en Excel y muchos ejemplos de nuestro Curso de Excel Avanzado

Excel Avanzado
Ejemplo Kardex

Formulario de Excel Avanzado para el ingreso de documentos de Salida de un Almacén

| 2 Comments

Lo que a continuación se va  a mostrar es la forma de  hacer un formulario que permita saber qué documentos han pasado por el encargado de almacén, así como qué movilidad lo llevó.

Para poder lograr el formulario hemos utilizado textbox para el ingreso de los datos y los datos ingresados que han hecho uso de un buscador a través de la fórmula Application.Vlookup (buscarv o consultav)

La idea es poder tener este formulario al final

(Para mayor visualización de la imagen, hacer click en la misma)

Como podemos observar tenemos nueve (9) textbox en los cuales vamos a llenar datos para proceder a llenarlos en la siguiente tabla

(Para mayor visualización de la imagen, hacer click en la misma)

como podemos observar  todos los datos ingresados se van a llenar en las seis (6) columnas mostradas

En nuestro formulario notamos que existen espacio vacío al lado derecho, dichos espacios contienen label, los cuales muestran el avance de nuestro ingreso. Como el ingreso va a  ser a través de códigos, los label internamente buscan un patrón otorgado para poder mostrar lo que significa el código otrogado

Para lograr ello cada vez que ingresemos un dato en una textbox y salgamos de ella, automáticamente se llenará el la label con el dato correspondiente por ejemplo en el caso del ruc tenemos en una hoja guardados los datos de nuestros clientes con sus ruc respectivos

(Para mayor visualización de la imagen, hacer click en la misma)

Y al nosotros llenar el ruc del cliente en nuestro formulario se verá de la siguiente manera

(Para mayor visualización de la imagen, hacer click en la misma)

Esto lo logramos con el siguiente código

Private Sub TextBox5_Exit(ByVal Cancel As MSForms.ReturnBoolean)

num = Val(TextBox5.Value)

columna3 = Application.VLookup(num, Sheets(“ruc”).Range(“A:B”), 2)

Label4.Caption = columna3

End Sub

Como vemos se está haciendo uso de Application.Vlookup(dato buscado, matriz, columna de la matriz), para luego utilizar un label4.caption =”lo que va en la label” 

En el caso de documento por ejemplo vemos que a los documentos se los ha completado con ceros, esto es un caso práctico ya que en el sistema que se utiliza el sistema te los devuelve de esa manera y se busca asemejar los datos empleados con los que el sistema te devuelve se lo hace de la siguiente manera, es más que todo un “concatenar” que se muestra en un label.caption 

Private Sub TextBox4_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Label2.Caption = TextBox2.Value & “-0″ & TextBox3.Value & ” 0000″ & TextBox4 & “-000”

End Sub

Para el botón Ingresar se utiliza el siguiente código

Private Sub CommandButton1_Click()
dos

End Sub
Sub dos()
Sheets(“hoja”).Select
t = Cells(Rows.Count, 1).End(xlUp).Row
S = t + 1

‘columna 1 fecha
Sheets(“hoja”).Range(“A” & S) = TextBox1.Value
‘columna 2 tipo de documento
columna2 = TextBox2.Value & “-0″ & TextBox3.Value & ” 0000″ & TextBox4 & “-000”
Sheets(“hoja”).Range(“B” & S) = columna2
‘columna 3 cliente
columna3 = Application.VLookup(Val(TextBox5.Value), Sheets(“ruc”).Range(“A:B”), 2)
Sheets(“hoja”).Range(“C” & S) = columna3
‘columna 4 carro con el que se despacha la mercadería
columna4 = Application.VLookup(Val(TextBox21.Value), Sheets(“carro”).Range(“A:B”), 2)
Sheets(“hoja”).Range(“D” & S) = columna4
‘columna5 chofer qu està transportando la mercaderìa
columna5 = Application.VLookup(Val(TextBox20.Value), Sheets(“chofer”).Range(“A:B”), 2)
Sheets(“hoja”).Range(“E” & S) = columna5
‘columna6 indica el producto que está saliendo con dicho producto
Sheets(“hoja”).Range(“F” & S) = Val(TextBox6.Value)
‘columna7 indica el producto que está saliendo con dicho producto
columna7 = Application.VLookup(Val(TextBox13.Value), Sheets(“rq”).Range(“A:B”), 2)
Sheets(“hoja”).Range(“G” & S) = columna7
End Sub

Para el caso del botón Limpiar, se utiliza los siguientes códigos

(Para mayor visualización de la imagen, hacer click en la misma)

Y para salir u ocultar el formulario lo siguiente

Private Sub CommandButton3_Click()

UserForm1.Hide

 

End Sub

Adjunto el archivo para su revisión

Saludos

Harold U. Mori Bazan
ARCHIVO ALMACÉN

2 Comments

  1. Este formulario me parece una buena herramienta para los trabajos que son en fábrica y en donde hay mucho movimiento.Actualmente trabajo en finanzas y me parece que con algunas modificaciones podría acondicionar el formulario para registrar los documentos que me recibo de los bancos y llevar un mejor control

  2. Un saludo, excellente formulario, me gustaria saber como es el codigo para imprimir desde un formulario en vba de excel, una hoja de calculo sin ingresar al archive de excel. solo desde el formuario que cargo en un archive donde tengo todas las macros

Deja un comentario

Required fields are marked *.


Excel Avanzado located at , Lima, Perú . Reviewed by usuarios rated: 4.7 / 5