Excel datos

Tengo una base de datos que usan varias personas, la mayoría sin conocimientos de excel. Para facilitar la introducción de datos he hecho un formulario "bonito" en la hoja 2 en el que se introducen los datos a partir de una hoja de recogida en papel, con valores diversos: fechas, números y, la mayoría, valores determinados (0 ó 1, o entre 0 y 5, p.ej.), para los que uso desplegables. Cuando termino lo paso a la hoja 1, la de los datos, y vuelvo a poner en blanco las celdas. Lo he aprendido aquí.
Sin embargo en muchas de las celdas los valores son muy repetitivos y varían poco; me explico: muchas de ellas el 90% de las veces valen 0. Por eso quería que el valor predeterminado de esa celda fuese 0 y que sólo hubiera que tocar el desplegable/escribir cuando fuese otro valor. Después habría que pasar el valor a la hoja 1 y el formulario "limpiarse" y recuperar el 0.
He probado varias cosas, pero no me sale. Y por favor, con peras y manzanas, que no tengo ni idea de programar.

1 Respuesta

Respuesta
1
En formulario en hoja se puede utilizar desplegables del menú Datos, Validación, como así también objetos del tipo Combobox o cuadros combinados.
Voy a 'imaginar' que estás utilizando los del menú Datos...
Al limpiar el formulario (y también para empezar) no debieras limpiar esas celdas sino dejarlas con el valor predeterminado, 0 o el que fuere.
Como esto parece un poco obvio, quizás no sea lo que estás consultando... mejor me envías tu hoja al correo que encontrarás en mi sitio (o me dejas el tuyo aquí) y te respondo sobre tu modelo.
Mi problema precisamente es que no sé cómo poner ese valor predeterminado. Debe ser muy sencillo, pero no doy con ello.
La validación debe incluir entre sus posibles valores el 0.
En la rutina que entiendo ya tenés (...Cuando termino lo paso a la hoja 1, la de los datos, y vuelvo a poner en blanco las celdas...) debes incluir la instrucción:
Sheets("Hoja1"). Range("B5") = 0 'en lugar de limpiarla y así con todas las celdas que tengan el desplegable que quieras en 0
La primera vez podrías hacerlo manualmente, o con una instrucción al abrir el libro:
Entrá al Editor, seleccioná con doble clic el objeto ThisWorkBook (o Este libro) del panel a tu izquierda y copiá esto:
Private Sub Workbook_Open()
Sheets("Hoja1").Range("B5") = 0
End Sub

PD) Si tenés alguna dificultad para incluir la instrucción, enviame tu hoja al correo que encontrarás en mi sitio. No olvides indicar tu alias y motivo de consulta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas