** NORMAS DEL FORO **
Inicio del foro Inicio del foro > Access y VBA > Access y VBA
  Mensajes nuevos Mensajes nuevos RSS - EVALUAR DOS VARIABLES CON UN SELECT CASE
  Preguntas frecuentes Preguntas frecuentes  Buscar en el foro   Eventos   Registro Registro  Iniciar sesion Iniciar sesion

Tema cerradoEVALUAR DOS VARIABLES CON UN SELECT CASE

 Responder Responder
Autor
Mensaje
elcachalote2010 Ver desplegable
Nuevo
Nuevo


Unido: 07/Diciembre/2014
Localización: Rep Dom
Estado: Sin conexión
Puntos: 43
Enlace directo a este mensaje Tema: EVALUAR DOS VARIABLES CON UN SELECT CASE
    Enviado: 23/Febrero/2016 a las 00:38
Estimados,

Quisiera saber como evaluar dos variables con un select case que me devuelva el msgbox si se cumplen las dos condiciones, por ejemplo si tengo una variable llamada nombre y otra apellido con un  If el codigo sería más o menos así:

Sub llamadas()

Dim nombre as string, apellido as string

nombre= Inputbox ("INTRODUCE EL NOMBRE")

apellido = Inputbox ("INTRODUCE EL APELLIDO")

If nombre ="Carlos" and apellido="Gutierrez then

Msgbox nombre & apellido

Else 

Msgbox "Parametro incorrecto"

End if

end sub

Ahora bien, no se si con un Select Case yo tendria que escribir esto al momento de entrar en el select case, por ejemplo:

Select Case Nombre And Apellido
Case is = "Carlos", Case is = "apellido"

o sería asi:
Select Case Nombre
Select Case Apellido
Case is = "Carlos"
Case is = "Apellido"

Msgbox nombre & apellido

Le doy las gracias anticipadas!
tommy tavarez
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 11668
Enlace directo a este mensaje Enviado: 23/Febrero/2016 a las 08:41
SELECT CASE evalúa una expresión, así que tendrías que construirla como tú quisieras y evaluarla en consecuencia...

Select Case Nombre & " " & Apellidos
    Case "Carlos Apellidos"
         Msgbox "Esta es la correcta"
End Select

Select Case Apellidos & ", " & Nombre
  Case "Apellidos, Nombre"
         Msgbox "Esta es la correcta"
End Select


Ten en cuenta que un solo blanco, de más o de menos haría que la comparación no funcionase ....




Vamos, que es mejor:

If Nombre = "Carlos" And Apellido = "Apellidos" then
    Msgbox "Por aquí más fácil"
End if





Editado por Mihura - 23/Febrero/2016 a las 08:51
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
VIMIPAS Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 06/Enero/2006
Localización: ESPAÑA
Estado: Sin conexión
Puntos: 5419
Enlace directo a este mensaje Enviado: 23/Febrero/2016 a las 21:46
Hola a todos, buenas noches.

Tommy, por curiosidad (si se puede saber, claro, si no se puede saber, pues no pongas nada): ¿para que necesitas hacer lo del Select Case?.

Saludos
Gracias
Arriba
elcachalote2010 Ver desplegable
Nuevo
Nuevo


Unido: 07/Diciembre/2014
Localización: Rep Dom
Estado: Sin conexión
Puntos: 43
Enlace directo a este mensaje Enviado: 24/Febrero/2016 a las 04:40
Estimado, 

Gracias por ayudarme me funcionó muy bien, pero tengo otra duda y si quiero que me vea las variables como si fuera con un Or en vez de un And.
Por ejemplo puedo decir con un If asi:

If nombre="CARLOS" Or Apellidos="GUTIERREZ" Then

Msgbox "CORRECTO"

End IF

con un Select Case no puedo decir asi:

Select Case Nombre Or Apellidos
Case "Carlos, Gutierrez"


Disculpa, mi insistencia es que soy un novato, las gracias nueva vez.

tommy tavarez
Arriba
elcachalote2010 Ver desplegable
Nuevo
Nuevo


Unido: 07/Diciembre/2014
Localización: Rep Dom
Estado: Sin conexión
Puntos: 43
Enlace directo a este mensaje Enviado: 24/Febrero/2016 a las 04:49
Querido VIMIPAS,

Lo que pasa es que soy de las personas que cuando me decido a aprender algo trato de aprenderlo todo, aunque hay tantos objetos en VBA que me será imposible y tambien el Select case se me hace familiar con el Select de SQL, aunque son totalmente diferente.

Saludos cordiales!
tommy tavarez
Arriba
Mihura Ver desplegable
Administrador
Administrador
Avatar

Unido: 06/Mayo/2005
Localización: En la dehesa
Estado: Sin conexión
Puntos: 11668
Enlace directo a este mensaje Enviado: 24/Febrero/2016 a las 09:05
Tommy, eso ya queda más complicado ....  LOL

Las herramientas sirven para lo que han sido diseñadas, no digo que en un momento dado puedas clavar un clavo con unas tenazas, pero para eso se inventó el martillo.

Traducido a Access, 

SELECT CASE es para evaluar una expresión y tomar acciones en función de los valores de la misma.

Si nos queremos complicar más la cosa tenemos el IF, que es la herramienta adecuada para lo que quieres hacer.






Editado por Mihura - 24/Febrero/2016 a las 09:05
Jesús Mansilla Castells.
Saludos desde Móstoles.

Access Aplicaciones
Tecsys.es
Arriba
E. Feijoo Ver desplegable
Moderador
Moderador


Unido: 16/Abril/2004
Localización: España
Estado: Sin conexión
Puntos: 19948
Enlace directo a este mensaje Enviado: 24/Febrero/2016 a las 11:57
Conocer los limites es algo interesante (y abre muchas puertas), pero una cosa es conocerlos y experimentar y otra es confundir cualquier herramienta con una navaja suiza.

Si se le imponen secuencias de comparaciones a un Select Case (por cierto se pueden concatenar select dentro de select al igual que if dentro de if ... etc.) perdemos la magia del Select Case.

Arriba
VIMIPAS Ver desplegable
Colaborador
Colaborador
Avatar

Unido: 06/Enero/2006
Localización: ESPAÑA
Estado: Sin conexión
Puntos: 5419
Enlace directo a este mensaje Enviado: 24/Febrero/2016 a las 21:37
Hola buenas noches de nuevo.

Tommy, no es que esté interesado en saber si tu estás tratando de buscarle los tres pies al Select Case.

Lo que realmente creía yo no es eso, lo que creía yo y pongo a continuación es esto:

¿Estará Tommy buscando hacer algo (que no sea aprender todas las posibilidades de Select Case) y tal vez no sepa como hacerlo y se ha quedado atascado en el Select Case?.

Eso era lo que yo realmente creía que te estaba ocurriendo, por eso puse: "para que necesitas hacer el Select Case".

Es decir que llevo tantos años usando Nombres y Apellidos en mis ejemplos que pensaba que a lo mejor tu también buscabas como usar Nombres y Apellidos. De ahí, repito, la pregunta vista desde otro ángulo: ¿Cómo tecleas el nombre y apellidos y para que los quieres usar con el Select Case? ¿Habrá algo que aún no estás diciendo y yo estoy entendiendo de otra forma?.

Nada mas.

Saludos
Gracias
Arriba
MexMan70 Ver desplegable
Colaborador
Colaborador


Unido: 17/Julio/2007
Localización: DarkSide
Estado: Sin conexión
Puntos: 9235
Enlace directo a este mensaje Enviado: 24/Febrero/2016 a las 23:03
Hay que ser muy especifico a la hora de buscar algo. Esto en relación a lo que pretendes porque:

Nombre="CARLOS" AND apellido="GUTIERREZ" -->SOLO registros = CARLOS GUTIERREZ (1 registro)
Nombre="CARLOS" OR apellido="GUTIERREZ" -->registros = CARLOS o GUTIERREZ (6 registros)

Si hubiese los siguientes registros:
CARLOS GUTIERREZ
JUAN GUTIERREZ
PEDRO GUTIERREZ
CARLOS SANCHEZ
JUAN SANCHEZ
PEDRO SANCHEZ
ANA MELGOZA
JUANA FLORES
HUGO GUTIERREZ
CARLOS ENRIQUEZ

La pregunta: que es lo que estas buscando ? La respuesta dará la pauta al modelo a seguir en tu programación. Si solo estamos buscando a una persona en particular o tantos como hubiera en la tabla (no importando como se apellide o como se llame siempre y cuando cumplan una de las dos premisas).
OneDrive: http://sdrv.ms/Vk6eJd
Arriba
elcachalote2010 Ver desplegable
Nuevo
Nuevo


Unido: 07/Diciembre/2014
Localización: Rep Dom
Estado: Sin conexión
Puntos: 43
Enlace directo a este mensaje Enviado: 25/Febrero/2016 a las 12:24
VIMIPAS,

Sólo queria saber si todo lo que puedo hacer con un If lo puedo hacer con un Select Case para no tener que recurrir al If si ya empece con el Select, buscando en en google solo veia ejemplos con una sola variable y sentí curiosidad, veo que en todo los ejemplos de los select se evaluaba una variable.

Saludos!
tommy tavarez
Arriba
elcachalote2010 Ver desplegable
Nuevo
Nuevo


Unido: 07/Diciembre/2014
Localización: Rep Dom
Estado: Sin conexión
Puntos: 43
Enlace directo a este mensaje Enviado: 25/Febrero/2016 a las 12:30
Estimado,

Okey, comprendí, sólo tenía curiosidad de si se podía como con el If, escuché en un video tutorial que todo lo que podía hacer un If lo podía hacer con un select.

Un saludo cordial!
tommy tavarez
Arriba
 Responder Responder
  Compartir tema   

Ir al foro Permisos de foro Ver desplegable