Access - error de sintaxis return ycodigo

 
Vista:

error de sintaxis return ycodigo

Publicado por jannette raad (2 intervenciones) el 06/11/2013 17:43:50
Private Function ult_codigocarrera() As Byte
Dim db As Database
Dim ssTmp As Recordset
Dim sSQL As String
Dim yCodigo As Byte
sSQL = "SELECT Max(cod_carreras) AS UltCodigo FROM t_carreras"
Set db = CurrentDb()
Set ssTmp = db.OpenRecordset(sSQL, dbOpenSnapshot, dbForwardOnly)
yCodigo = ssTmp!UltCodigo
ssTmp.Close
Set ssTmp = Nothing
Set db = Nothing
Return yCodigo
End Function

al ejecutar me sale error de sintaxis y me señala la línea Return yCodigo y no se como corregir este error. Necesito ayuda!!!!!!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

error de sintaxis return ycodigo

Publicado por Norberto (753 intervenciones) el 07/11/2013 14:41:52
Hola.

No sé de que lenguaje vienes, pero en VB no se devuelven los valores de las funciones con Return como estarás acostumbrado sino con NombreFunción = Expresión.

Por tanto cambia la linea y pon ult_codigocarrera = yCodigo

Tan sencillo o complicado como eso.

De todas formas puedes ahorrarte la función si usas
variable = DMax("cod_carreras", "t_carreras") *
en vez de
variable = ult_codigocarrera()

Un saludo,

Norberto


* DMáx("cod_carreras"; "t_carreras") si la expresión la usas en Access y no en VBA.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

error de sintaxis return ycodigo

Publicado por jannette raad (2 intervenciones) el 12/12/2013 23:30:02
Muchas gracias Norberto por tu pronta ayuda, disculpa que no te haya agradecido con anterioridad. Es que no había leído la respuesta. Esta base de datos la estoy creando en ACCESS 2010

No me adiciona el valor al código este es el código que estoy utilizando con las modificaciones que me sugeristes.Te agradezco de todo corazón tu ayuda. Quite la función. Dios te llene de sabiduría y me puedas ayudar a solucionar esto.

Mil bendiciones!!!!

Private Sub Cuadro_combinado26_NotInList(NewData As String, Response As Integer)
Dim mensaje As String, titulo As String, respuesta As Integer
Dim db As Database, r As Recordset, codigo As Integer
mensaje = "El Recurso no se encuentra en la lista. ¿Desea añadirlo?"
titulo = "Nuevo Recurso"
respuesta = MsgBox(mensaje, 36, titulo)
If respuesta = 6 Then 'Si se desea dar de alta el nuevo elemento
Set db = CurrentDb()
Set r = db.OpenRecordset("T_RECURSOS_NOMBRE")
codigo = DMax("[cod_recurso]", "[T_RECURSOS]") + 1 'Funcion que obtiene el ultimo codigo de recurso de la tabla
r.AddNew
r![COD_RECURSO] = codigo
r![N_RECURSO] = NewData
r.Update
r.Close
origen = "Select n_recurso From t_recursos" 'Se actualiza el origen de la fila
Me![N_RECURSO].RowSource = origen
Me![N_RECURSO].Requery
Me![COD_RECURSO] = codigo 'Se asigna el nuevo codigo
Else
Me![N_RECURSO] = Null
DoCmd.GoToControl (N_RECURSO)
End If
Response = DATA_ERRCONTINUE
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar