Access - Renombrar imágenes desde VBA Access

 
Vista:

Renombrar imágenes desde VBA Access

Publicado por Jose H. (2 intervenciones) el 27/11/2013 13:01:28
Hola a todos.

Tengo una base de datos Access de alumnos. Las fotos de los mismos están en una carpeta y se llaman como su expediente+jpg. lo que hace que cuando cambio de ficha me muestra la foto del alumno.

Ahora lo que quiero es poder seleccionar desde un formulario de access un grupo o aula y que a través de VBA (código) crear una carpeta y copiar dentro de la misma todas las fotos de los alumnos de ese grupo o aula. Evidentemente en la tabla alumnos tengo los campos Expediente, ApellidosyNombre, Aula, etc y de paso, que la foto pasase a llamarse en vez de expediente.jpg --> apellidosynombre.jpg

Llevo unos días buscando por la web pero no consigo el código necesario.

Agradezco cualquier ayuda.

Saludos.

Jose.
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 Toni

Renombrar imágenes desde VBA Access

Publicado por Toni (129 intervenciones) el 28/11/2013 18:33:03
Hola Jose

Aunque no he trabajado demasiado con lo de copiar archivos, carpetas, etc.. buceando un poco en la ayuda de Access he encontrado esto:

Para crear una carpeta mírate: MkDir, es muy sencillo de usar.

Para copiar archivos mírate: CopyFile,

éste último según la ayuda de access sería así:
objeto.CopyFile origen, destino [, sobrescribir]

objeto: Requerido. El objeto siempre es el nombre de un objeto FileSystemObject.


te pongo un ejemplo de este último, que es el de copiar archivos, para que lo veas un poco más claro.
(lo he probado y funciona )

1
2
3
4
5
6
7
Dim FileSystemObject As Object
 
Dim Myfs As Object
 
Set Myfs = CreateObject("Scripting.FileSystemObject")
 
Myfs.CopyFile "C:\MICARPETAORIGEN\MiarchivoOrigen.jpg", "C:\MICARPETADESTINO\MiarchivoDestino.jpg"

Como verás la primera parte es el origen donde le indicas la ruta y el archivo a copiar y la segunda parte (después de la coma) es el destino donde le puedes indicar también otro nombre distinto de archivo.

Suerte
Toni
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

Renombrar imágenes desde VBA Access

Publicado por Jose H. (2 intervenciones) el 28/11/2013 18:50:34
Hola Toni,

Funciona perfecto, pero sólo me copia una foto, cuando tengo más de 1000.

Me podrías ayudar en crear un bucle que recorra la carpeta entera y vaya copiando todas las fotos y a la vez cambiándoles al nombre de expediente.jpg a apellidosynombre.jpg, ambos campos están almacenados en la tabla alumnos.

Muchas gracias.

Jose
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