Mostrar imagen según selección |
Responder |
Autor | |
andressf
Habitual Unido: 12/Abril/2011 Localización: Argentina Estado: Sin conexión Puntos: 147 |
Tema: Mostrar imagen según selección Enviado: 04/Julio/2019 a las 21:31 |
Buenas como andan? de ante mano les agradezco por su tiempo.
Tengo un formulario llamado: f_Artic_vta que tiene un cuadro de texto independiente llamado [descrip_art] y un cuadro de lista lamado [lista_Art] que es independiente, pero basado en la tabla t_Art hasta acá todo bien, pero le agregué un marco de objeto independiente llamado [imag_Art] para que cuando haga clik sobre el cuadro de lista en el valor sellecionado me muestre la imagen. Tengo la tabla: t_Art con los campos: (Clav.Pral ) Cod_ba_Art = Texto corto Descrip_art = Texto corto imag_Art = Objeto OLE En el cuadro de lista [lista_Art] en eventos al hacer click puse Private Sub lista_Art_Click() Me.imag_Art = DLookup("imag_Art", "t_Art", "'Cod_ba_Art='" & Me.lista_Art.Column(5)) End Sub Me sale este error: Se ha producido el error '3075 en tiempo e ejecución: Error de sintaxis (falta operador) en la expresion de consulta "Cod_ba_Art='1111010. |
|
jilo
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Colaborador Unido: 19/Diciembre/2004 Localización: TAFALLA Estado: Sin conexión Puntos: 959 |
Enviado: 05/Julio/2019 a las 07:18 |
Hola,
Yo lo haria de otra manera. Primero cambia el Objeto independiente a objeto imagen y en vez de gusrdsr un objeto OLE, habria que guardar la ruta de la imagen como texto. Segundo te hace falta la ruta de las imagenes y yo las meteria en el campo imag_Art(Ruta completa con archivo y extension) o crearia un campo nuevo llamado RutaImagen, por ejemplo. Entonces en el evento click del Listbox
|
|
Espero te sirva !!!!!!
Iñaki |
|
Maverick2019
Habitual Unido: 10/Junio/2019 Localización: Madrid Estado: Sin conexión Puntos: 145 |
Enviado: 05/Julio/2019 a las 10:07 |
Hola
¿Has cerrado las comillas después del código de artículo? Salu2,
|
|
andressf
Habitual Unido: 12/Abril/2011 Localización: Argentina Estado: Sin conexión Puntos: 147 |
Enviado: 05/Julio/2019 a las 19:23 |
Buen día Jilo, muchas gracias por tu respuesta y por el consejo, probé como me dijiste y funcionó ahora lo que no me funciona es cuando no hay imagen, cree una imagen con el nombre imagen_general pero me sale el siguiente error:
Error 2220 en tiempo de ejecución No puede abrir el archivo C:\Imagen\1111007.jpg Dim Ruta As String Ruta = "C:\Imagen\" & Me.lista_Art.Column(5) & "" & ".jpg" If Len(Ruta) = 0 Then Me.Imagen_art.Picture = "C:\Imagen\imagen_general.jpg" Else Me.Imagen_art.Picture = Ruta End If End Sub |
|
prga
Moderador Unido: 16/Noviembre/2004 Localización: España Estado: Sin conexión Puntos: 3523 |
Enviado: 06/Julio/2019 a las 10:24 |
Hola.
Con el último código expuesto, la longitud de la cadena Ruta nunca será cero, con esto el If siempre "va" al Else. Mira en la ayuda del VBA la función Dir que casi seguro resolverá el problema. Ya comentas. Un saludo a todos
|
|
jilo
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Colaborador Unido: 19/Diciembre/2004 Localización: TAFALLA Estado: Sin conexión Puntos: 959 |
Enviado: 06/Julio/2019 a las 12:36 |
Hola, Prga tiene razon.Yo lo use porque usaba como busqueda Dlookup y puede que devuelva error si no existe ese registro. Te quedaria asi Private Sub lista_Art_Click() |
|
Espero te sirva !!!!!!
Iñaki |
|
andressf
Habitual Unido: 12/Abril/2011 Localización: Argentina Estado: Sin conexión Puntos: 147 |
Enviado: 08/Julio/2019 a las 01:12 |
Hola prga, gracias por responder, pero disculpame no entiendo que me queres decir. Busque en la ayuda pero no me sale nada con la función Dir, tengo office 365.
|
|
andressf
Habitual Unido: 12/Abril/2011 Localización: Argentina Estado: Sin conexión Puntos: 147 |
Enviado: 08/Julio/2019 a las 01:47 |
Hola jilo, probé, probé y me sigue dando error. _________________________________________________________________________ Dim Ruta As String Ruta = Nz(DLookup("C:\Imagen\", "t_Art", "'Cod_ba_Art='" & Me.lista_Art.Column(5)), "") If Len(Ruta) = 0 Then Me.Imagen_art.Picture = "C:\Imagen\imagen_general.jpg" Else Me.Imagen_art.Picture = Ruta End If _______________________________________________________________________ Probé también así: El error es cuando me tiene que mostrar la imagen_general Error 2220 en tiempo de ejecución No puede abrir el archivo C:\Imagen\1111007.jpg Dim Ruta As String Dim vacio As String Ruta = "C:\Imagen\" & Me.lista_Art.Column(5) & "" & ".jpg" Vacio = Nz("C:\Imagen\" & Me.lista_Art.Column(5) & "" & "imagen_general.jpg") ' agregué esta linea If Len(Ruta) = 0 Then 'También probé con Null en lugar de 0 Me.Imagen_art.Picture = vacio Else Me.Imagen_art.Picture = Ruta End If Espero puedan ayudarme... |
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14738 |
Enviado: 08/Julio/2019 a las 09:24 |
Como te dijo prga, deberias buscar información sobre la función Dir de Access. Una búsqueda con las palabras "dir access vba" devuelve un monton de links, todos ellos con información válida. |
|
andressf
Habitual Unido: 12/Abril/2011 Localización: Argentina Estado: Sin conexión Puntos: 147 |
Enviado: 11/Julio/2019 a las 17:50 |
Bueno, después de quemarme el craneo y buscar por todos lados he llegado!!. Gracias y se puede cerrar. Private Sub lista_Art_AfterUpdate() Dim Archivo As String Archivo = Dir("C:\Imagen\" & Me.lista_Art.Column(5) & "" & ".jpg") If Archivo <> "" Then ' el fichero existe Me.Imagen_art.Picture = "C:\Imagen\" & Me.lista_Art.Column(5) & "" & ".jpg" Else ' el fichero no existe 'MsgBox "Imagen Inexistente", vbInformation, "AVISO" Me.Imagen_art.Picture = ("C:\Imagen\0000.jpg") End If Editado por andressf - 14/Julio/2019 a las 01:36 |
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |