Elaborar una planilla de pagos de empleados en exc

Debo hacer una planilla de pagos que ingrese los datos desde
formularios y los datos se deben almacenar en una sola hoja que será la
planilla general, el problema es que cuando ingreso un registro en el
formulario ya logro pasarlo a la planilla general, pero cuando quiero escribir otro
registro se borra el anterior, la cosa empeora cuando desde otro formulario debo poder ingresar o eliminar un empleado o modificar los datos de ellos
por favor ayúdenme es urgente
gracias cualquier aporte se agradece

1 Respuesta

Respuesta
1
En mi sitio de descargas podrás encontrar un ejemplo de formulario para mantenimiento de base de datos.
http://es.geocities.com/lacibelesdepunilla/descargas
El archivo se llama Interactuando con Userforms. Allí encontrarás cómo llamar a la primer fila libre de destino:
Fila = Sheets(...).Range("A65536").End(xlup).Row + 1
y las funciones FIND y FINDNEXT para ubicar registros que necesites modificar, eliminar o solo consultar.
De antemano dejame decirte que la base de datos con imágenes funcionó a la perfección pero como no se mucho de programación hay algunas cositas que desearía añadir a mi programa pero no se donde ni como ponerlas por ejemplo en mi país la cédula de ciudadanía es así 0703088732 ó 1212214587 de 10 dígitos pero cuando ingreso el primero que empieza con 0 éste desaparece y solo quedan 9 dígitos, y además me gustaría restringir los números de teléfono a 9 dígitos y también empiezan con 0
Disculpa si molesto mucho
Y gracias de antemano
Pensé que te interesaba el mantenimiento de base de datos con Userforms, no el de las imágenes, je je
No me queda claro dónde querés validar esos formatos: en celda o en un control dentro del userform.
Para el largo, si es en celda utilizá 1 opción del menú Datos, Validación y en un control ajustá la propiedad MaxLen...
Si me interesa el mantenimiento de bases pero como pase largo tiempo intentando y no podía empecé con el de imágenes,
con respecto a la aclaración los datos los ingreso desde el formulario yo he visto que de antemano sabe venir un formato determinado algo así #########-# pero si no se puede lo que más me interesa es que no me permita ingresar más que números y que permita como primer numero el cero y lo mismo en el teléfono como pongo esa aclaración en visual basic de excel y lo más importante donde
Por favor ayudame que no se mucho acerca de programación
gracias
En tu Userform imagino que el textbox1 será para nros y el textbox2 para nros de te.
En la propiedad MaxLength de cada control indicá el largo máximo (esto solo te establece el máx pudiendo ingresar menos cifras)
Las rutinas las colocás en el mismo Userform, dando doble clic al control.
Para el Textbox1 esta rutina te impide salir si no se cumple la condición de que sea numérico y el primer dígito debe ser 0. En el formato de la celda debés optar por personalizada y elegir 00000 la cantidad que quieras y coincidirá con el largo max del control.
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If Not IsNumeric(TextBox1) Or Left(TextBox1, 1) <> 0 Then
Cancel = True
End If
Para el control del te, este es un ejemplo de como colocar el formato al salir del control (ajústalo al formato que necesites)
Private Sub TextBox2_AfterUpdate()
TextBox2 = Format(TextBox2, "###-#####")    'aqui el largo max es de 8
End Sub
A partir de aquí todas las combinaciones que quieras. Por ej para establecer un largo obligatorio podes agregar en el primer control:
If not isNumeric(...) or left(....) or len(textbox1) <>10 then

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas