plis ayuda...una duda
cuando pongo en caso de que sea..... ejemplo:
valor =0
select case index
case 0
op1 =valor+10
NOTA como pongo lo contrario en caso de que no sea escogido esa opcion...y poner que vale cero si no es el caso....
eso dice en caso que mi opcion i sea valor
Puedes usar bucles anidados. Esto es que denttro del case puedes usar la instruccion if End if:
Select case index
Case 0
valor = 0
if x = true then
valor= valor +10
else
valor=0
end if
end select
Select case index
Case 0
valor = 0
if x = true then
valor= valor +10
else
valor=0
end if
end select
depende el caso, pero me parece que para eso te queda mucho más facil usar if..
no te entendí, bien..
pero si no entra en el case 0
el valor no varía.
no te entendí, bien..
pero si no entra en el case 0
el valor no varía.
coloca si (if) bla bla bla = bla bla bla entonces (then) bla bla bla
sino (else) bla bla bla
cachay o no
sino (else) bla bla bla
cachay o no
Select case valor
case 1: . . .
case 2: . . .
case else . . . . . .
end select
case 1: . . .
case 2: . . .
case else . . . . . .
end select
Mira la instrucción de select case se ejecuta de forma selectiva entre varios bloques de instrucciones.
La instrucción IF THEN ELSE, permite tomar las decisiones necesarias entre dos o más situaciones que tomen un curso diferente dentro de tu aplicación, si tu tienes que valor = 0 , entonces
if valor = o then
opc1 = valor+10
elseif valor = 1 then
opc1= valor+10
endif
Otro ejemplo seria que:
if valor = 0 then
opc1 = valor+10
elseif valor<>0 then
opc1 = valor
endif
En cambio con select case, solo se ejercerá una selección por cada case, ejecutando un bloque de instrucciones por cada case
Espero haber sido de ayuda
Atentamente.
Sanuvim.
La instrucción IF THEN ELSE, permite tomar las decisiones necesarias entre dos o más situaciones que tomen un curso diferente dentro de tu aplicación, si tu tienes que valor = 0 , entonces
if valor = o then
opc1 = valor+10
elseif valor = 1 then
opc1= valor+10
endif
Otro ejemplo seria que:
if valor = 0 then
opc1 = valor+10
elseif valor<>0 then
opc1 = valor
endif
En cambio con select case, solo se ejercerá una selección por cada case, ejecutando un bloque de instrucciones por cada case
Espero haber sido de ayuda
Atentamente.
Sanuvim.
Perdona, Victor, pero la sentencia if..elseif, tal y como la planteas en tu respuesta funciona exactamente como un select case. Es excluyente.
Otra cosa sería si no usas el elseif:
if valor>0 then
msgbox "valor mayor que 0"
endif
if valor>5 then
msgbox "valor mayor que 5"
endif
si valor es 8, aparecerían los dos msgbox.
Otra cosa sería si no usas el elseif:
if valor>0 then
msgbox "valor mayor que 0"
endif
if valor>5 then
msgbox "valor mayor que 5"
endif
si valor es 8, aparecerían los dos msgbox.
