Viendo todas las posibilidades he hecho una mega chapuza con if/elseif/else, ya que no veo una forma amigable de poner unos select case ahi.
El resultado es el siguiente:
Código
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If ComboBox1.Text <> "Seleccionar usuario" Then If (DateTimePicker1.Enabled) Then If (No.Checked = False And Si.Checked) Then ' Query con usuario, fecha, y giros (solo los dados) ElseIf (No.Checked And Si.Checked = False) Then ' Query con usuario, fecha, y giros (solo los NO dados) Else 'Query con usuario y fecha End If Else If (No.Checked = False And Si.Checked) Then ' Query con usuario, y giros (solo los dados) ElseIf (No.Checked And Si.Checked = False) Then ' Query con usuario, y giros (solo los NO dados) Else ' Query con usuario End If End If Else If (DateTimePicker1.Enabled) Then If (No.Checked = False And Si.Checked) Then ' Query con fecha, y giros (solo los dados) ElseIf (No.Checked And Si.Checked = False) Then ' Query con fecha, y giros (solo los NO dados) Else ' Query fecha. End If Else If (No.Checked = False And Si.Checked) Then ' Query con giros (solo los dados) ElseIf (No.Checked And Si.Checked = False) Then ' Query con giros (solo los NO dados) End If End If End If End Sub
La idea es mandar una consulta diferente a la base de datos en función de que fue lo que se filtró.
Mi pregunta es, ¿hay alguna forma de hacer más eficiente todo esto?