Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: lio crossroad en 20 Abril 2013, 20:55 pm



Título: consejo sobre el uso del Select Case en este ejercicio
Publicado por: lio crossroad en 20 Abril 2013, 20:55 pm
(http://fotos.subefotos.com/99c053e08b537b549d8367e4786592dfo.jpg)

(http://fotos.subefotos.com/c170a6b566dffeaa0fdb7a9ff740a7f7o.jpg)


  cuando los textbox1 el 2 y el 3  esten llenos los tres debe pasar los datos que se rellenan, si faltara  rellenar un textbox  deberia salir un mensaje alertando que falta llenar ese campo:

por ejemplo si falta edad entonces deberia salir mensaje  "falta llenar edad" y no deberia permitir que pasen los datos a las celdas, asi con todas las combinaciones con tres textbox, es necesario usar solo el select case,.... a ver si me ayudan ver donde puedo estar errando.....

+cuando no se ha introducido ningun dato , hasta ahi corre chevre en las combinaciones tengo problemas.

ESTE EL CODIGO del boton aceptar

-------------------
Private Sub CommandButton1_Click()

Select Case (TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "")
Case TextBox1 = "" And TextBox2 = "" And TextBox3 = "":
MsgBox ("faltan nombre y apellido,edad y direccion")
Case TextBox1 = "" And TextBox2 = "":
MsgBox ("faltan  edad")
Case TextBox2 = "" And TextBox3 = "":
MsgBox ("faltan nombre")
Case Else
For x = 2 To 35
If Cells(x, 2) = "" Then
Exit For
End If
Next
Cells(x, 1) = TextBox1
Cells(x, 2) = TextBox2
Cells(x, 3) = TextBox3
End Select


End Sub

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

 

 


Título: Re: consejo sobre el uso del Select Case en este ejercicio
Publicado por: Emanuel2236 en 20 Abril 2013, 22:47 pm
Código
  1. Option Explicit
  2.  
  3. Private Sub Command1_Click()
  4.  
  5.    If Not TextComplete(Edad) Then Exit Sub
  6.  
  7.    'Aquí completa las celdas.
  8.    MsgBox "Siguiente Instrucción"
  9.  
  10. End Sub
  11.  
  12. Function TextComplete(TextBox As TextBox) As Boolean
  13.  
  14.    TextComplete = IIf(LenB(TextBox.Text), True, False)
  15.    If Not TextComplete Then MsgBox "Falta completar: " & TextBox.Name
  16.  
  17. End Function
  18.  


Título: Re: consejo sobre el uso del Select Case en este ejercicio
Publicado por: lio crossroad en 21 Abril 2013, 18:36 pm
 si utilizo el IF :corre bien

If TextBox1 = "" Or TextBox2 = "" Or TextBox3 = "" Then
MsgBox ("faltan nombre y apellido,edad y direccion")
Else
For x = 2 To 35
If Cells(x, 2) = "" Then
Exit For
End If
Next
Cells(x, 1) = TextBox1
Cells(x, 2) = TextBox2
Cells(x, 3) = TextBox3
End If

pero lo que yo BUSCO es como escribirlo esta sentencia con el SELECT CASE usando su sintaxis,,,,,, osea cambiar el codigo de arriba que esta con el if por un CASE


Título: Re: consejo sobre el uso del Select Case en este ejercicio
Publicado por: $Edu$ en 21 Abril 2013, 18:53 pm
Es que queda horrible haciendo uso de select case, estas seguro que te lo han pedido asi?


Título: Re: consejo sobre el uso del Select Case en este ejercicio
Publicado por: Flamer en 21 Abril 2013, 20:15 pm
hola dime si te sirve

Código:
Private Sub Command1_Click()
Select Case ""
   Case txt_Nombre
      MsgBox "Error Falta El Nombre...", vbInformation, "Aviso De Error"
   Case txt_Apellido
      MsgBox "Error Falta El Apellido...", vbInformation, "Aviso De Error"
   Case txt_Edad
      MsgBox "Error Falta El Edad...", vbInformation, "Aviso De Error"
End Select
End Sub

saludos


Título: Re: consejo sobre el uso del Select Case en este ejercicio
Publicado por: tincopasan en 21 Abril 2013, 21:54 pm
Como te han dicho parece mal usar select case pero... probá este código
vi q usas for lo único q cambié es q en vez de varios textbox es uno solo en matriz, o sea haces uno, lo copias y pegas. en este caso pegué dos veces, podes hacer todos los que quieras solo cambias en for la cantidad y agregas los cases index que necesites.

Private Sub Command1_Click()
Dim I As Integer

For I = 0 To 2
Select Case Text1(I).Text
       
       Case ""
                  Select Case I
                          Case 0
                              MsgBox ("falta nombre ")
                              Text1(0).SetFocus
                              Exit Sub
                          Case 1
                             MsgBox ("falta apellido")
                             Text1(1).SetFocus
                             Exit Sub
                          Case 2
                             MsgBox ("falta direccion")
                             Text1(2).SetFocus
                             Exit Sub
                          End Select
       Case Else
       ' Cells(x, 1) = Text1(0)
       ' Cells(x, 2) = Text1(1)
       ' Cells(x, 3) = Text1(2)
       End Select
 Next
     
End Sub


Título: Re: consejo sobre el uso del Select Case en este ejercicio
Publicado por: lio crossroad en 21 Abril 2013, 22:48 pm
bueno viendo como utilizaban el SELECT case de estas ""... lo resolvi, gracias por responder y gracias sobre todo a Flamer  y a tincopasan  .... que me dieron ideas de como usar el select case  en este caso.... ;-)