Programación General > Visual Basic 6.0 e inferiores

 Contador!!!

(1/1)

ghr:
buenas dias amigos, otra vez por aqui tratado de arreglar un problema que tengo, mieren lo que pasa es que tengo una tabla en la que tengo continfor y contsist y lo que quiero hacer es que que al seleccionar una de las dos opciones que tengo en un combo se incremente el contador dependiendo de la opcion que se escoja, como tengo el codigo es asi:



--- Código: Text ---Private Sub cmbCarrera_LostFocus()            Dim db As String            Dim con As Connection            Dim rstEsp As Recordset               db = App.Path & "\encuesta.mdb"               Set con = New ADODB.Connection            Set rstEsp = New ADODB.Recordset        Select Case cmbCarrera.Text        Case "INFORMATICA"            con.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & db            rstEsp.Open "SELECT continfor FROM contadores", cnn, adOpenDynamic, adLockOptimistic                        If Not (rstEsp.EOF) Then                varcg = rst.Fields("continfor")                varcg = varcg + 1                rstEsp!continfor = varcg                rstEsp.Update                rstEsp.Close                txtXp.Text = "INFORMATICA" & varcg                txtNombre.SetFocus            End If                          Case "SISTEMAS"            con.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & db            rstEsp.Open "SELECT contsist FROM contadores", cnn, adOpenDynamic, adLockOptimistic                        If Not (rstEsp.EOF) Then                varlp = rstEsp.Fields("contsist")                varlp = varlp + 1                rstEsp!contsist = varlp                rstEsp.Update                rstEsp.Close                txtXp.Text = "SISTEMAS" & varlp                txtNombre.SetFocus            End If        Case Else            Beep            mensaje = MsgBox("Debe escoger una CARRERA para poder        continuar", vbOKOnly)            cmbCarrera.SetFocus    End SelectEnd Sub 
se supone que despues de que cerramos el Recordset quiero concatenar (dependiendo el que se escoja en el combo) "SISTEMAS & 1", quedando SISTEMAS1 y luego se guarda y si lo vuelvo a ejecutar despues que fuera "SISTEMAS2, etc" pero asi como lo tengo no me hace nada: una no se incrementa en la base, dos: no me respeta el setfocus del txtNombre y tres tampoco se pone en el txtXp el dichoso "SISTEMAS1, ect.

si alguien me puediera decir en que parte del codigo puediera estar mal, o que es lo que me falta....  (las variales varcg y carlp las tengo declaradas como integer) :(

firme:
creo creo creo q es algo asi  ;)
debes de declarar la variable en declaracion general
dim varcg as integer
prueba esto en visual basic

declaracion general
'Dim x As Integer  eso es declaracion general

Private Sub Command1_Click()
Static x As Integer 'tambien  lo pones en el boton pero con static
x = x + 1
Text1 = x
End Sub

cpmario:
Te falta el Edit. Prueba con lo siguiente:


--- Código: Text ---            If Not (rstEsp.EOF) Then               varcg = rst.Fields("continfor")               varcg = varcg + 1               rstEsp.Edit               rstEsp!continfor = varcg               rstEsp.Update               rstEsp.Close               txtXp.Text = "INFORMATICA" & varcg               txtNombre.SetFocus           End If  :comp:

Navegación

[0] Índice de Mensajes

Ir a la versión completa