MACRO colocar nombre a imagen del valor de una celda

Hay alguna manera de asignar por medio un de un botón

Me abra la ventana para seleccionar una imagen y que el nombre de esa imagen seleccionada la agarre de un valor en especifico

De un label o un textbox etc etc

La imagen son JPG

2 respuestas

Respuesta
1

No entendí.

Quieres que te abra el explorador de windows para seleccionar una imagen.

Y después de seleccionar el archivo con la imagen, ¿qué quieres hacer?

Cuando se abra el explorador desde un formulario en la siguiente ruta:

C:\Users\JAIRO\Desktop\carpetadeimagenes

Al seleccionar una imagen con POR nombre y darle clic a abrir

Ahora la imagen agarre el nombre de el textbox1 que previamente se lleno

Para cambiar el nombre de la imagen desde el formulario

Algo así... gracias

Qué es el "Algo así"

¿Quieres renombrar el archivo?

Si en el textbox1 dice "teclado.jpg"

Abro el explorador, seleccionas el archivo con el nombre "escritorio.jpg".

¿Quieres qué el archivo "escritorio.jpg" ahora sea nombrado como "teclado.jpg"?

Si eso no es lo que necesitas, podrías explicarlo con ejemplos, paso a paso.

emm seria algo así

Si en el textbox1 tengo puesto "nuevo nombre"

Y abro el explorador selecciono una imagen cuyo nombre dice "viejo nombre" (.jpg)

Y al darle click en abrir este cambie el nombre de la imagen por "nuevo nombre"

msgbox "imagen cambiada"

Algo así, no se si se pueda... saludos

Te anexo la macro

Private Sub CommandButton1_Click()
'Por Dante Amor
    'Renombrar un archivo
    '
    If TextBox1.Value = "" Then
        MsgBox "Falta nombre nuevo en el textbox"
        Exit Sub
    End If
    '
    With Application.FileDialog(msoFileDialogFilePicker)
        .Title = "Seleccione archivo de IMAGEN"
        .Filters.Clear
        .Filters.Add "Todos los archivos", "*.*"
        .FilterIndex = 1
        .AllowMultiSelect = False
        .InitialFileName = "C:\Users\JAIRO\Desktop\carpetadeimagenes\"
        '.InitialFileName = "C:\trabajo\"
        If .Show Then
            nombre = .SelectedItems.Item(1)
            p1 = InStrRev(nombre, "\")
            carpeta = Left(nombre, p1)
            arch = Mid(nombre, p1 + 1)
            p2 = InStrRev(arch, ".")
            ant = Mid(arch, 1, p2 - 1)
            ext = Mid(arch, p2)
            nvo = TextBox1.Value
            If Dir(carpeta & nvo & ext) = "" Then
                Name nombre As carpeta & nvo & ext
                MsgBox "imagen cambiada"
            Else
                MsgBox "El nombre de archivo nuevo ya existe"
            End If
        End If
    End With
End Sub

.Sal u dos. Dante Amor. No olvides valorar la respuesta.

.[ No olvides valorar la respuesta.

Respuesta
1

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas