Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

Duda en una condicion o no se....

Estas en el tema de Duda en una condicion o no se.... en el foro de Visual Basic clásico en Foros del Web. Hola, tengo un problema. Resulta que tengo una base de datos en VB, y tengo un boton que sirve para eliminar registros (clientes). Pues bien, ...
  #1 (permalink)  
Antiguo 01/12/2005, 17:11
 
Fecha de Ingreso: noviembre-2005
Ubicación: Sarajevo
Mensajes: 56
Antigüedad: 18 años, 5 meses
Puntos: 0
Duda en una condicion o no se....

Hola, tengo un problema. Resulta que tengo una base de datos en VB, y tengo un boton que sirve para eliminar registros (clientes). Pues bien, yo he puesto en el code un msgbox que indica lo siguiente "¿Deseas borrar el cliente? y aparecen dos opciones YES o NO. Bien, yo tengo el codigo programado para que se borre la ficha de cliente, pero quisiera poder poner alguna condicion para que si no deseamos eliminar la ficha del cliente, al pulsar sobre NO, que no continue con el codigo, ya que sigue y termina eliminando la ficha de cliente. Supongo que se hara metiendo un

Cita:
If msgbox= vbNO Then .... (aqui es donde me pierdo)

O seguramente este muy equivocado y no sea asi... sera mas complicado... pero llevo poco tiempo y leo mucho, pero entiendo poco... supongo que sera normal....
  #2 (permalink)  
Antiguo 01/12/2005, 17:55
Avatar de jc_moty  
Fecha de Ingreso: septiembre-2005
Ubicación: Usulután, El Salvador
Mensajes: 477
Antigüedad: 18 años, 7 meses
Puntos: 1
Pues, segun te entendi.
La respuesta es si la condicion es esa que pones.
Código:
If msgbox= vbNo Then .... (lo que vas hacer)
Saludos
  #3 (permalink)  
Antiguo 01/12/2005, 19:27
Avatar de hernanmdq  
Fecha de Ingreso: julio-2005
Ubicación: Argentina - Entre Rios
Mensajes: 167
Antigüedad: 18 años, 9 meses
Puntos: 1
La respuesta es simple, como te dicejc_moty pon
If msgbox = vbyes then
eliminar registro
end if ' en el caso que aprete No, no pasa nada.

Salu2
__________________
| Codigo Geek | Blog de Cine |
  #4 (permalink)  
Antiguo 02/12/2005, 09:57
 
Fecha de Ingreso: noviembre-2005
Ubicación: Sarajevo
Mensajes: 56
Antigüedad: 18 años, 5 meses
Puntos: 0
Hola, gracias por vuestra aclaracion... probare a ver pero creo que hice una prueba, la que indica hernanmdq vamos algo asi...

Cita:
If msgbox = vbyes then
eliminar registro
end if ' en el caso que aprete No, no pasa nada.

Pulsando que NO, igual me eliminaba el registro... de todos modos lo volvere a probar, y si no me funciona y me sigue eliminando el registro, ¿puedo colgar el codigo que tengo para ese commandbutton?

Gracias.
  #5 (permalink)  
Antiguo 02/12/2005, 18:54
Avatar de Jad-Neo  
Fecha de Ingreso: octubre-2004
Mensajes: 344
Antigüedad: 19 años, 6 meses
Puntos: 0
De acuerdo

A ese código se le puede agregar una pequeña clausula que se llama Exit Sub, que te saca del procedimiento:

Código:
If Msgbox = vbYes Then
    'Eliminar al cliente
Else
    Exit Sub
End If
__________________
Nunca seas sabio en tu propia opinión.
  #6 (permalink)  
Antiguo 02/12/2005, 19:42
 
Fecha de Ingreso: noviembre-2005
Ubicación: Sarajevo
Mensajes: 56
Antigüedad: 18 años, 5 meses
Puntos: 0
Hola Jad-Neo,

el problema lo tengo en que yo quiero que al salir las dos opciones, si el usuario pincha en No, pues que el programa se detenga o salga de la opcion borrar, ya que el codigo para borrar el cliente se encuentra en el cmdBorrar.

Y si quiere borrar, al pulsar en Si, pues que el programa siga su curso, y sera eliminado, porque el codigo esta programado a tal efecto... pero cuando hice la prueba en clase el jueves, tanto al seleccionar Si, como si seleccionaba No (borrar Si o No), me eliminaba el cliente, por lo que deduzco que el codigo en algun lugar estaba erroneo...

De todos modos, hasta el lunes, no tendre acceso al codigo, ya que lo tengo en el pc de clase, por lo que no podre modificarlo... de todos modos, gracias por las sugerencias...
  #7 (permalink)  
Antiguo 03/12/2005, 12:03
Usuario baneado!
 
Fecha de Ingreso: febrero-2005
Mensajes: 116
Antigüedad: 19 años, 2 meses
Puntos: 0
ustedes que saben tanto compadres, ayudenme a aprender vb... quiero parecerme a ustedes, saben muchisimo, son mis idolossss!!!!
  #8 (permalink)  
Antiguo 05/12/2005, 18:46
 
Fecha de Ingreso: noviembre-2005
Ubicación: Sarajevo
Mensajes: 56
Antigüedad: 18 años, 5 meses
Puntos: 0
Hola, he probado lo que me han indicado, pero sigo sin poder solucionarlo, asi que les dejo el codigo que tengo en el boton BORRAR CLIENTE

Lo que me hace es si le digo que no lo elimine, me muestra los msgbox, pero al final me dice, Cliente eliminado y por supuesto lo elimina....

Les pego el codigo, a ver si me dicen o me ayudan a intentar solucionarlo...


Código:
Private Sub Command5_Click()
Dim resp As Integer
resp = MsgBox("¿Deseas elimiar la ficha?", vbYesNo + vbInformation, "ATENCION")
If resp = vbNo Then
MsgBox "No ha eliminado ningun cliente", vbOKOnly + vbInformation, "ATENCION"
End If
Close
Open "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\datos.dat" For Input As 1
Open "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\pasadatos.dat" For Append As 2
Do While Not EOF(1)
Input #1, nomcogido
Input #1, apecogido
Input #1, dircogido
Input #1, pobcogido
Input #1, obscogido
If nomcogido = Text7.Text Then
Text1.Text = nomcogido
Text2.Text = apecogido
Text3.Text = dircogido
Text4.Text = pobcogido
Text5.Text = obscogido
Else
Write #2, nomcogido
Write #2, apecogido
Write #2, dircogido
Write #2, pobcogido
Write #2, obscogido
End If
Loop
Close #1
Close #2
Kill "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\datos.dat"
Name "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\pasadatos.dat" As "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\datos.dat"
MsgBox "CLIENTE BORRADO", vbOKOnly + vbInformation, "ATENCION"
End Sub
  #9 (permalink)  
Antiguo 06/12/2005, 08:50
Avatar de reel  
Fecha de Ingreso: febrero-2004
Ubicación: Managua, Nicaragua
Mensajes: 496
Antigüedad: 20 años, 3 meses
Puntos: 1
Fijate en la línea que está en rojo

Código:
Private Sub Command5_Click()
Dim resp As Integer
resp = MsgBox("¿Deseas elimiar la ficha?", vbYesNo + vbInformation, "ATENCION")
If resp = vbNo Then
  MsgBox "No ha eliminado ningun cliente", vbOKOnly + vbInformation,     "ATENCION"
Exit Sub
End If
Close
Open "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\datos.dat" For Input As 1
Open "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\pasadatos.dat" For Append As 2
Do While Not EOF(1)
Input #1, nomcogido
Input #1, apecogido
Input #1, dircogido
Input #1, pobcogido
Input #1, obscogido
If nomcogido = Text7.Text Then
Text1.Text = nomcogido
Text2.Text = apecogido
Text3.Text = dircogido
Text4.Text = pobcogido
Text5.Text = obscogido
Else
Write #2, nomcogido
Write #2, apecogido
Write #2, dircogido
Write #2, pobcogido
Write #2, obscogido
End If
Loop
Close #1
Close #2
Kill "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\datos.dat"
Name "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\pasadatos.dat" As "C:\Archivos de programa\Microsoft Visual Studio\VB98\Proyectos\BASE DATOS\datos.dat"
MsgBox "CLIENTE BORRADO", vbOKOnly + vbInformation, "ATENCION"
End Sub
__________________
Leer es Saber, REEL.
Mi Blog
  #10 (permalink)  
Antiguo 06/12/2005, 09:00
Avatar de aldo1982  
Fecha de Ingreso: noviembre-2004
Ubicación: Santa Fe (Argentina) Colon F.C
Mensajes: 1.362
Antigüedad: 19 años, 5 meses
Puntos: 6
la respuesta

exit sub

salu2
__________________
LA MUERTE ESTÁ TAN SEGURA DE VENCER QUE NOS DA TODA UNA VIDA DE VENTAJA
  #11 (permalink)  
Antiguo 06/12/2005, 09:47
 
Fecha de Ingreso: noviembre-2005
Ubicación: Sarajevo
Mensajes: 56
Antigüedad: 18 años, 5 meses
Puntos: 0
Hola,

MUCHAS GRACIAS.

La verdad es que JAD-NEO ya me lo indico en su ejemplo, pero no supe interpretar el codigo bien, ya que lo colocaba en el lugar equivocado, por eso no me paraba el codigo y lo ejecutaba borrando el cliente.

Bueno, seguire haciendo cosillas y si me surgen otras dudas, se las comentare.

Reitero lo dicho, MUCHAS GRACIAS.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 06:34.