Access - #Error en función para concatenar

 
Vista:
sin imagen de perfil
Val: 56
Ha disminuido 1 puesto en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Leandro (21 intervenciones) el 11/08/2018 15:57:20
Hola tengo una función que concatena datos, pero me da #Error
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Function ArmarDomicilio(pCalle As String, pNro As String, pTorre As String, pPiso As Byte, pDpto As String) As Variant
 
' Direccion: [Calle] & " Nº " & [Nro] & " - Torre " & [torre] & " - Piso " & [piso] & " Dpto " & [dpto]
 
Dim Aux As String
 
Aux = pCalle & " Nº " & pNro
 
If pTorre <> "" Then
 Aux = Aux & " - Torre " & pTorre
End If
If EsError(pPiso) Then
 Aux = Aux & " - Piso " & pPiso
End If
If pDpto Is Null Then
 Aux = Aux & " Dpto " & pDpto
End If
 
ArmarDomicilio = Aux
 
End Function

he intentado <>"" Es Error y Is Null con todos me da igual el error, si elimino Torre, piso y dpto funciona bien, ya que calle y nro siempre tienen valor y estos 3 últimos aveces tienen un valor y aveces no, creo que por eso me da #Error, no se como solucionarlo.
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 Naren
Val: 127
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Naren (33 intervenciones) el 11/08/2018 17:26:39
¿por qué usás la funcion EsError(ppiso)?
pdpto esta declarada como string, deberias evaluara con cadena vacia en lugar de null, o sea pdpto="" no pdpto is null
¿cuál es el error que te manda?
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
sin imagen de perfil
Val: 56
Ha disminuido 1 puesto en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Leandro (21 intervenciones) el 12/08/2018 23:40:59
use todas las formas, igual a "", distinto a "", es nulo, es error, y todas las formas me da igual, me da #Error como resultado, son todos cadenas menos piso que es byte,.
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
Imágen de perfil de Naren
Val: 127
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Naren (33 intervenciones) el 13/08/2018 01:00:47
si me das la tabla con datos o la base para echarle un vistazo
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
sin imagen de perfil
Val: 56
Ha disminuido 1 puesto en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Leandro (21 intervenciones) el 14/08/2018 23:42:43
hola perdon la demora pero no sabia como enviarte la tabla, estoy intentando
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
Imágen de perfil de Naren
Val: 127
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Naren (33 intervenciones) el 14/08/2018 23:59:08
ah.. pense que tu base estaba en access.. eso es foxpro?
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
Imágen de perfil de Naren
Val: 127
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Naren (33 intervenciones) el 15/08/2018 00:33:51
ok, ya tengo la base de datos. en que formulario tenes el error?
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
sin imagen de perfil
Val: 56
Ha disminuido 1 puesto en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Leandro (21 intervenciones) el 15/08/2018 00:38:42
Tabla agentes, consulta1, última columna donde dice Domicilio
Función ArmarDomicilio
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
Imágen de perfil de Naren
Val: 127
Bronce
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Naren (33 intervenciones) el 15/08/2018 00:51:10
Por el tipo de datos que estabas usando, no podias usar el valor NULO al llamar a las variables, por eso era el error. Solamente cambie el tipo de datos de los parametros y agregué una validación para evitar errores cuando los valores sean nulos. Tambien agregué un botón en el formulario para probar con cada dato

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Function ArmarDomicilio(pCalle As Variant, pNro As Variant, pTorre As Variant, pPiso As Variant, pDpto As Variant) As Variant
 
' Direccion: [Calle] & " Nº " & [Nro] & " - Torre " & [torre] & " - Piso " & [piso] & " Dpto " & [dpto]
If IsNull(pCalle) Then pCalle = ""
If IsNull(pNro) Then pNro = ""
If IsNull(pTorre) Then pTorre = ""
If IsNull(pPiso) Then pPiso = 0
If IsNull(pDpto) Then pDpto = ""
Dim Aux As String
 
Aux = pCalle & " Nº " & pNro
 
If pTorre <> "" Then
 Aux = Aux & " - Torre " & pTorre
End If
'If pPiso <> "" Then
' Aux = Aux & " - Piso " & pPiso
'End If
If pDpto <> "" Then
 Aux = Aux & " Dpto " & pDpto
End If
 
ArmarDomicilio = Aux
 
End Function
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
sin imagen de perfil
Val: 56
Ha disminuido 1 puesto en Access (en relación al último mes)
Gráfica de Access

#Error en función para concatenar

Publicado por Leandro (21 intervenciones) el 15/08/2018 01:01:41
Genial. funciona correctamente. MUCHAS GRACIAS
he aprendido algunas cosas más al ver el código que enviaste
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