Verificar datos por columna o por fila

Elsa Matilde buenas tardes
Tengo una inquietud espero por favor me colabores y es la siguiente:
Tengo una hoja de calculo así: La columna (A)es Nombre de paciente, la columna B es cedula, la columna C es sexo y así tengo columnas tituladas has ta la AB. Como hago para verificar fila por fila, por medio de una macro, que datos faltan en las columnas B hasta la AB de esos nombres de la columna (A). Ojala la pudiera manejar de dos formas: Verificar columna por columna o por Grupo. Por ejemplo:
Que me diga: De Juanito Perez le falta el No de cedula, sexo etc. Lo que no tengo claro es si es mejor que me lo muestre en un Formulario o que lo copie en otra hoja o de otra forma. Lo importante es saber que le falta a cada paciente. La base de datos siempre es grande.
Le agradezco su colaboración
Julio C
Espero haya sido lo suficientemente
Respuesta
1
Debes decidir qué hacer con la información que encuentre la macro.
Si vas a recorrer fila por fila e ir completando los datos que faltan, sería mejor mostrar un Userform con los campos faltantes habilitados para la actualización.
Este proceso se puede ir ejecutando en forma parcial, es decir ir completanto algunas filas, cerrar y seguir en otro momento.
Pero si quieres una lista de datos faltantes de toda la base, habrá que mostrarlos en otra hoja.
Una 3er alternativa es que selecciones un paciente y te muestre en un mensaje los campos faltantes. Esto sería un proceso para un control individual
Tendrás que decidir primero qué hacer, ya que serán rutinas distintas.
Gracias Elsa Matilde.
Me inclino por la opción tercera es la más apropiada .
Pero me gustaría que también me regalaras la macro de la segunda opción se que me serviría mucho.
Te agradezco.
Te dejo la tercera, como lo solicitaste. Tengo mucho trabajo ahora para hacer 2 rutinas, más adelante me pedís la otra.
Esta va en un módulo y puede ser asociada a un botón o atajo de teclado. Tendrás que ajustar tus referencias (encontrarás comentarios en la rutina)
Option Explicit
Sub buscaFaltantes()
Dim dato, faltante As String
Dim mifila, col As Integer
'texto inicial
faltante = "Faltan datos en columnas: "
dato = InputBox("Ingrese paciente a controlar")
If dato <> "" Then
'ajustar nombre de hoja
Sheets("Hoja6").Select
'establecer primera celda a recorrer
ActiveSheet.Range("A2").Select
While ActiveCell.Value <> ""
If ActiveCell = dato Then
mifila = ActiveCell.Row
col = 1
While col <= 27 'calculado hasta la col AB
If ActiveCell.Offset(0, col) = "" Then
faltante = faltante & " " & Cells(1, col + 1)
End If
col = col + 1
Wend
MsgBox faltante
Exit Sub
Else
'repite el bucle para la siguiente fila
ActiveCell.Offset(1, 0).Select
End If
Wend
End If
End Sub
Saludos, y si todo funciona según lo esperado, no olvides finalizar la consulta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas