Evitar nulos o vacíos en el combo 2 dependiente tras actualizar los valores del combo 1

Es una pregunta para Jacinto Trillo

Tengo dos combos que dependen uno del otro:

CboOrdenar:

Integrado por los nombres de los campos de la tabla "LIBROS"

CboCampoElegido:

Sus valores son los valores que intengran los campos de "LIBROS"

En CboOrdenar (que es donde creo que hay que insertar la función Nz) tengo esto que me enviaste:

Private Sub CboOrdenar_AfterUpdate()

Dim CampoOrden As Variant
On Error GoTo CboOrdenar_AfterUpdate_TratamientoErrores

'Para que el CboCampoElegido tome los Valores de acuerdo al Campo seleccionado
Me.CboCampoElegido = Null
Me.CboCampoElegido.Requery

CampoOrden = Me.CboOrdenar.Value
Forms!FiltroGeneral.OrderBy = CampoOrden
Forms!FiltroGeneral.OrderByOn = True
CampoSeleccionado = Me.CboOrdenar.Column(0)

Me.CboCampoElegido.RowSource = "SELECT DISTINCT " & CampoSeleccionado & " FROM LIBROS;"
Me. CboCampoElegido. Requery

... Etc. Etc.

End Sub

El problema que tengo es que cuando selecciono en el "CboOrdenar" el valor "FechaBaja", o "AUTOR" o cualquier otro campo que contenga nulos o vacíos, en el combo "CboCampoElegido" me aparecen como valores entre otros, los nulos o vacíos. Me gustaría evitar esos valores vacíos en el desplegable del combo 2 "CboCampoElegido"

--------------------------------------------------------------------------------------------------------------------------------------------------

Creo que el Nz habría que ponerlo en el combo 1 "CboOrdenar" en esta línea para evitar los nulos:

Me.CboCampoElegido.RowSource = "SELECT DISTINCT " & CampoSeleccionado & " FROM LIBROS;"

Había pensado esto pero no funciona:

Me.CboCampoElegido.RowSource = "SELECT DISTINCT " & CampoSeleccionado & " FROM LIBROS Where Nz (CampoSeleccionado, """"" ) <>"""";"

O tal vez haya que trabajar sobre el otro combo "CboCampoElegido" ...

Ya me dices

Respuesta
1

Rafa: Sustituye la línea>>

Me.CboCampoElegido.RowSource = "SELECT DISTINCT " & CampoSeleccionado & " FROM LIBROS;"

por ésta otra >>

Me.CboCampoElegido.RowSource = "SELECT DISTINCT " & CampoSeleccionado & " FROM LIBROS WHERE " & CampoSeleccionado & " Is Not Null;"

Cópiala para que se conserven los espacios. Saludos >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas