Espeso? Ni mijita!!!!....máquina total!!!! Lo he tenido q ver cuatro veces entero porque en un copia/pega de código que haces un pelín rápido me despisté, pero cuando le doy al F5 y funciona!!!! me da un alegrón!!! Muchísimas gracias de nuevo Juan, pisha mía!!!
En mi opinión, a la hora de programar uno tiene que entender el sentido y significado de cada línea de código. Si guardas algo no tiene sentido. No tiene sentido programar algo porque sabes la instrucción de memoria y no porque conoces su sentido. Un saludo
Para los que no les aparece la librería "Microsoft Office 14.0 Object Library", sigan escribiendo el código como si la tuvieran, el editor de código les preguntara si quieren agregar esa librería
Estimado Juan, primero; saludos desde Argentina, segundo felicitaciones por la forma amena en llevar adelante este proyecto, realmente lleva la docencia en el Alma, se nota la pasión puesta en esto. Ahora, tengo Access 2013 y realice tal como lo hizo en la clase N°24 en la comprobacion de usuarios, pero hay alguna incompatibilidad en esta versión con la sintaxis New. Produce el siguiente error: "Error de compilación. el uso de la palabra New no es valido." como puedo enviarle el modulo para que lo vea? lo he repasado muchas veces pero no veo donde esta el error.
Hola, he seguido este video tan bueno como tantos otros que tienes y me surge una duda. Tomas la decision de copiar el codigo y pegarlo en el mismo procedimiento, si se define el procedimiento como un function se podria llamar desde el if devolviendo el valor de la ruta? Un saludo.
Martin Varela Hola !! Hace mucho que grabé este vídeo y ahora mismo no se a qué te refieres. Si me dices el minuto y segundo exacto donde copio y pego el código, te podré decir algo. Un saludo
pildorasinformaticas Si claro, sería el minuto 20:44. lo que haces en el sub_prueba es escribir un codigo para abrir una ventana que te deje elegir un archivo para importar, luego copias este codigo y lo introduces en el sub conecta_remoto. ¿se podria definir el sub_prueba como function_prueba y que devuelva el valor de la ruta la sub conecta_remoto? Muchas gracias por tu tiempo!! Un saludo.
Hola de nuevo. Vale ya lo veo. Si se podría hacer, pero también tendrías que hacer una llamada al procedimiento function. Es decir, en caso de error, en caso de que no encuentre la BBDD se hace una llamada al procedimiento function, sale la ventana FileDialog, escogemos el directorio y la BBDD y retornamos al procedimiento sub. Sería lo mismo pero yo lo veo más complejo y con más código en este caso. Quizás sería útil si en esta BBDD tenemos varios procedimientos que utilizan el código de FileDialog. Un saludo
Hola, Ademas de la duda anterior, estoy viendo en la ayuda que hay mas propiedades de FileDialog que no aparecen al escribir "ventana.", es el caso de "InitialDirectory". ¿Sabrías que biblioteca tengo que activar para ver el resto de propiedades? Muchas gracias, un saludo.
Hola Juan, estoy siguiendo este curso de VBA y estoy aprendiendo mucho. Me gustaría los poder revisar los códigos sin necesidad de volver a ver los vídeos ¿Hay algún enlace para descargar la base de datos?
Buenos días Juan, usted sabe que escribí tal cual cual el código como usted lo hizo y no me genera ningún tipo de error en el código pero no me copia los registros en los campos correspondientes, no los borra, no los actualiza. Es decir no hay error de sintaxis (Porque el editor no me lo indica) pero no se generan cambios en la base de datos. Estoy utilizando Access 2013
Hay dos tipos de errores a la hora de programar: errores de sintaxis y errores lógicos. Tanto si cometes uno como si cometes otro, el programa no funcionará. Puede ser que no tengas errores de sintaxis, es decir, que lo hayas escrito todo bien. pero puede ser que tengas un error lógico, es decir, que lo que hayas escrito no tenga sentido. Tal vez has declarado algo que no corresponde, o un bucle no se inicia como es debido... Te recomiendo que revises cuidadosamente tu código con el del vídeo y si después de hacerlo crees que lo tienes todo igual y sigue sin funcionarte, copia y pega por aquí todo tu código para que lo pueda comprobar. Un saludo!!
hola juan , al intentar instalar la librería Microsoft Office 14.0 Object Library no me aparece en la lista, si esta Microsoft Acces 14.0 Oject Library, con esta ultima no me sale el FileDialog, alguna sugerencia gracias.
Estimado, todo muy interesante, solo te pido me aclares esto: Cuando se asigna el valor a la variable ruta ¿Siempre esto debe ir un For Each? ¿si es así porque? Gracias.
Cuando trabajas con un FileDialog sí. En otros casos no. El bucle for- each se utiliza en VBA para recorrer colecciones de objetos. Cuando estamos dentro de una ventana tipo FileDialog, lo que contiene esta en su interior es una colección de items (archivos sin determinar) para que el usuario seleccione los que quiera (uno o varios). Para ver que archivo o archivos seleccionó el usuario tienes que recorrer la colección de items (.selectedItems) con un for-each. Si además deseas obtener la ruta del archivo/s seleccionado, la función Cstr (convierte a String) ha de estar dentro del for-each porque ha de aplicarse en el momento en el que el bucle evalúa el item (archivo) que seleccionó el usuario. En este caso concreto si lo hiciéramos fuera del for-each, el programa no sabría a cuál de los posibles items seleccionados aplicar la función Cstr porque al salir del for-each es posible que se hayan seleccionado varios items. La pregunta es muy buena, la explicación no tanto. Es complejo ver esto. Pero está bien que queráis saber la procedencia y el sentido de cada línea de código. Un saludo
@@pildorasinformaticas gracias! Esta pregunta es interesante, porque yo puedo tener instaladas todas las librerías, pero cuando llevo el proyecto a mi cliente, puede que no las tenga. Si compilo el proyecto, las incluye? 🤔
Buenas tardes! Espero que me puedan ayudar a resolver este problema, a mi me aparece un mensaje de error en tiempo de ejecución, pero me dice: "No se pudo encontrar el ISAM instalable" y al depurar me marca en amarillo toda la línea de "miconexion.Open "Provider=Microsoft... etc. Ayuda y mis felicitaciones para este excelente canal :D
Mauricio Collazo Hola !! Ese error parece que corresponde a que no tienes instalado el driver correspondiente. El driver a utilizar varía dependiendo de la versión de Access que manejes y también depende de que tengas office correctamente instalado. ¿Qué versión de Access estás utilizando? un saludo
pildorasinformaticas Gracias por la respuesta, tengo instalado el Office 2013, he hecho algunas búsquedas sin éxito y quise avanzar, pero hoy día me resultó realmente imprescindible el driver. Saludos y un abrazo desde México
Vale. En el curso se utilizó la versión 2010. No recuerdo ahora la versión del Driver para 2013 pero si buscas en google lo encontrarás rápido. ( Creo que si cambias 12.0 por 14.0 funcionará )
Pues si tienes activada la librería sólo se me ocurre que tengas algún error de sintaxis en el código. Si no fuera así, no sabría decirte el por qué del error sin verlo. Lo siento....
Espeso? Ni mijita!!!!....máquina total!!!! Lo he tenido q ver cuatro veces entero porque en un copia/pega de código que haces un pelín rápido me despisté, pero cuando le doy al F5 y funciona!!!! me da un alegrón!!! Muchísimas gracias de nuevo Juan, pisha mía!!!
Es un Gran Maestro !!. No hay dudas.
Felicitaciones.
Chile. 30-12-2014.
Daniel Aguero Gracias !! Un saludo
Exelente video
Me sirvió mucho para resolver varias dudas
Mu gustaría que muestres el programa ya ejecutándose
Saludos desde México
Profesor, Excelentes tus vídeos. Así sí sale "Bases de datos" por defecto. MUCHAS GRACIAS.
Salduos Mestro, se le agradece el compartir sus conocimientos.
Gracias !! Un saludo
Excelente, has estado muy fluido. Hasta los errores que cometes son muy educativos.
Agradecido por el video, nos saca de muchas dudas con respecto a la conección a BBDD.
Lo que me gusta de tu forma de explicar es que lo haces sin "reservas" hay "otros" que siempre se "guardan algo" y te quedan lagunas. Gracias
En mi opinión, a la hora de programar uno tiene que entender el sentido y significado de cada línea de código. Si guardas algo no tiene sentido. No tiene sentido programar algo porque sabes la instrucción de memoria y no porque conoces su sentido. Un saludo
pildorasinformaticas De lo mejor tu manera de enseñar. Gracias!
Gracias !! Saludos
Excelente!!!, muchas gracias por compartir
Como siempre Gracias!!!!!
eres un muy buen tutor , gracias
jhon fredy guapacha Gracias por el comentario. Un saludo
Obrigado, professor pela aula. Brasília-Brasil
Obrigado.
Muy bueno, como todos. Gracias
Gracias
Para los que no les aparece la librería "Microsoft Office 14.0 Object Library", sigan escribiendo el código como si la tuvieran, el editor de código les preguntara si quieren agregar esa librería
Estaba a punto de cambiar la versión de Office! Funciona sin aparecer en las referencias "Microsoft Office 14.0 Object Library", gracias!!
Que bien explicas
muy bien explicado ¡
Gracias !! Un saludo
Estimado Juan, primero; saludos desde Argentina, segundo felicitaciones por la forma amena en llevar adelante este proyecto, realmente lleva la docencia en el Alma, se nota la pasión puesta en esto.
Ahora, tengo Access 2013 y realice tal como lo hizo en la clase N°24 en la comprobacion de usuarios, pero hay alguna incompatibilidad en esta versión con la sintaxis New.
Produce el siguiente error: "Error de compilación. el uso de la palabra New no es valido."
como puedo enviarle el modulo para que lo vea? lo he repasado muchas veces pero no veo donde esta el error.
Master de masters!!
Hola, he seguido este video tan bueno como tantos otros que tienes y me surge una duda. Tomas la decision de copiar el codigo y pegarlo en el mismo procedimiento, si se define el procedimiento como un function se podria llamar desde el if devolviendo el valor de la ruta?
Un saludo.
Martin Varela Hola !! Hace mucho que grabé este vídeo y ahora mismo no se a qué te refieres. Si me dices el minuto y segundo exacto donde copio y pego el código, te podré decir algo. Un saludo
pildorasinformaticas Si claro, sería el minuto 20:44. lo que haces en el sub_prueba es escribir un codigo para abrir una ventana que te deje elegir un archivo para importar, luego copias este codigo y lo introduces en el sub conecta_remoto. ¿se podria definir el sub_prueba como function_prueba y que devuelva el valor de la ruta la sub conecta_remoto?
Muchas gracias por tu tiempo!! Un saludo.
Hola de nuevo. Vale ya lo veo. Si se podría hacer, pero también tendrías que hacer una llamada al procedimiento function. Es decir, en caso de error, en caso de que no encuentre la BBDD se hace una llamada al procedimiento function, sale la ventana FileDialog, escogemos el directorio y la BBDD y retornamos al procedimiento sub.
Sería lo mismo pero yo lo veo más complejo y con más código en este caso. Quizás sería útil si en esta BBDD tenemos varios procedimientos que utilizan el código de FileDialog.
Un saludo
Hola,
Ademas de la duda anterior, estoy viendo en la ayuda que hay mas propiedades de FileDialog que no aparecen al escribir "ventana.", es el caso de "InitialDirectory". ¿Sabrías que biblioteca tengo que activar para ver el resto de propiedades?
Muchas gracias, un saludo.
Martin Varela Hola !! Pues la verdad es que no. Yo en mi ayuda solo veo FileType y no veo InitialDirectory. Siento no ser de más ayuda. Un saludo
Muchas gracias!! Creo que he encontrado otra propiedad que me valdria, es el caso de initialfilename. Gracias por responder nuevamente! Un saludo
Creo Recordar que initialDirectory pertenece a VB.net y no a VBA si mal no recuerdo
Hola Juan, estoy siguiendo este curso de VBA y estoy aprendiendo mucho.
Me gustaría los poder revisar los códigos sin necesidad de volver a ver los vídeos
¿Hay algún enlace para descargar la base de datos?
Hola !! Pues lo siento pero no. No tengo la BBDD terminada con todos los códigos. Un saludo!!
No importa, esto es de lo mejor que he visto. Muchísimas gracias.
Buenos días Juan, usted sabe que escribí tal cual cual el código como usted lo hizo y no me genera ningún tipo de error en el código pero no me copia los registros en los campos correspondientes, no los borra, no los actualiza. Es decir no hay error de sintaxis (Porque el editor no me lo indica) pero no se generan cambios en la base de datos. Estoy utilizando Access 2013
Hay dos tipos de errores a la hora de programar: errores de sintaxis y errores lógicos. Tanto si cometes uno como si cometes otro, el programa no funcionará. Puede ser que no tengas errores de sintaxis, es decir, que lo hayas escrito todo bien. pero puede ser que tengas un error lógico, es decir, que lo que hayas escrito no tenga sentido. Tal vez has declarado algo que no corresponde, o un bucle no se inicia como es debido... Te recomiendo que revises cuidadosamente tu código con el del vídeo y si después de hacerlo crees que lo tienes todo igual y sigue sin funcionarte, copia y pega por aquí todo tu código para que lo pueda comprobar. Un saludo!!
hola juan , al intentar instalar la librería Microsoft Office 14.0 Object Library no me aparece en la lista, si esta Microsoft Acces 14.0 Oject Library, con esta ultima no me sale el FileDialog, alguna sugerencia gracias.
¿Qué versión de Access utilizas?
Estimado, todo muy interesante, solo te pido me aclares esto: Cuando se asigna el valor a la variable ruta ¿Siempre esto debe ir un For Each? ¿si es así porque? Gracias.
Cuando trabajas con un FileDialog sí. En otros casos no.
El bucle for- each se utiliza en VBA para recorrer colecciones de objetos. Cuando estamos dentro de una ventana tipo FileDialog, lo que contiene esta en su interior es una colección de items (archivos sin determinar) para que el usuario seleccione los que quiera (uno o varios).
Para ver que archivo o archivos seleccionó el usuario tienes que recorrer la colección de items (.selectedItems) con un for-each. Si además deseas obtener la ruta del archivo/s seleccionado, la función Cstr (convierte a String) ha de estar dentro del for-each porque ha de aplicarse en el momento en el que el bucle evalúa el item (archivo) que seleccionó el usuario.
En este caso concreto si lo hiciéramos fuera del for-each, el programa no sabría a cuál de los posibles items seleccionados aplicar la función Cstr porque al salir del for-each es posible que se hayan seleccionado varios items.
La pregunta es muy buena, la explicación no tanto. Es complejo ver esto. Pero está bien que queráis saber la procedencia y el sentido de cada línea de código. Un saludo
4:10 la librería se agrega a nuestro proyecto o al access en general?
A Access. Pero es fácil de comprobar. Agrégalo a un proyecto y después crea uno nuevo. En menos de 30 segundos tendrás la respuesta. Un saludo!
@@pildorasinformaticas gracias! Esta pregunta es interesante, porque yo puedo tener instaladas todas las librerías, pero cuando llevo el proyecto a mi cliente, puede que no las tenga.
Si compilo el proyecto, las incluye? 🤔
utilizo la versión 2010
Buenas tardes! Espero que me puedan ayudar a resolver este problema, a mi me aparece un mensaje de error en tiempo de ejecución, pero me dice: "No se pudo encontrar el ISAM instalable" y al depurar me marca en amarillo toda la línea de "miconexion.Open "Provider=Microsoft... etc. Ayuda y mis felicitaciones para este excelente canal :D
Mauricio Collazo Hola !! Ese error parece que corresponde a que no tienes instalado el driver correspondiente. El driver a utilizar varía dependiendo de la versión de Access que manejes y también depende de que tengas office correctamente instalado. ¿Qué versión de Access estás utilizando?
un saludo
pildorasinformaticas Gracias por la respuesta, tengo instalado el Office 2013, he hecho algunas búsquedas sin éxito y quise avanzar, pero hoy día me resultó realmente imprescindible el driver. Saludos y un abrazo desde México
Vale. En el curso se utilizó la versión 2010. No recuerdo ahora la versión del Driver para 2013 pero si buscas en google lo encontrarás rápido. ( Creo que si cambias 12.0 por 14.0 funcionará )
Estoy trabajando con ACCESS 2013 y me produce error .Filters.Add "Bases de datos", "*.accdb"
¿Qué dice el error?
No admite el método esta propiedad o método
Imagino que será: "El objeto no admite esta propiedad o método" Asegúrate de que has agregado la librería Office 14 tal y como se indica en el vídeo
Active En su librería contiene Microsoft Office 15.0 Object Library
Pues si tienes activada la librería sólo se me ocurre que tengas algún error de sintaxis en el código. Si no fuera así, no sabría decirte el por qué del error sin verlo. Lo siento....
versión 2010