Jump to content

Mostrar, eliminar o copiar código QR en userform


Recommended Posts

Saludos Estimados miembros del foro, he tratado de generar un código QR usando solo macros para que se muestre en la hoja1, pero el que funciono fue uno publicado usando funciones.

Bien, me gustaría poder hacer que se vea en el objeto imagen  dispuesto en el userform adjunto, igualmente poder copiarlo y finalmente eliminar, para que hacer otro nuevo según requiera

Tengo el código para limpiar imágenes en la hoja pero per elimina todas las imágenes, solo quiero borrar la imagen de QR, pues voy a tener otra imagen que no es QR

Agradezco su gentil colaboración

Subo el archivo para que lo vean

 Aquí el archivo para descargar

Link to comment
Share on other sites

Posted (edited)

Excelente!! veo que funciona directamente con VBA tal que intentaba hacer...ahora se puede eliminar y no me elimina otras imágenes que tengo necesariamente en la hoja.

En el userform me gustaría poder copiar al código QR..🤔 pienso como poder hacerlo pero lo veo dificil pues normalmente cada imagen tomará nuevo contenido y por lo tanto nuevo nombre automático supongo...me es suficiente con poder subir al userform el que esta en C2 pues estamos usando la firma personal y lo que cambiaria es el texto.

Tal como crea el QR y muestra el contenido al escanear esta de maravilla,.. el userform es porque uno que estoy usando tengo otros datos necesarios...y me falta solo el la imagen del QR

Edited by Visor
Falto aclaración
Link to comment
Share on other sites

Estoy muy agradecido, ahora voy a procurar adaptar a lo que ya tengo.

El modo de crear el archivo QR y desde ahí subir el QR al userform es una opción para evitar las variaciones de los nombres que en la hoja de excel sucede...a menos que exista una forma de dejar un nombre fijo para la imagen de QR que se crea cada vez en la hoja, para poder subir desde ahí directamente.

A propósito en realidad solo era para el texto de una celda, es para una persona no varias.

Gracias por el código, con ello voy a seguir avanzando

 

Link to comment
Share on other sites

  • Crear macros Excel

  • Posts

    • Muchas Gracias Janlui. Funciona perfecto, veras que he añadido a la macro una última línea que es la que crea el fichero final TXT en una ubicación concreta. Lo que no se es porque una vez generado el TXT la última parte la vuelve a entrecomillar (en la hoja 5 del fichero que adjunto veras un pantallazo del TXT que genera) Repito, muchas gracias por la ayuda Saludos       Ejemplo3.xlsm
    • Observé un pequeño error, espero ya esté bien. Sub genera_txt()     Set datos = Worksheets("Hoja1")     Sheets("hoja2").Select     Dim cadena As String     Range("a27:a5000").ClearComments     rd = 2     rs = 27     xc = Chr(34)     Do While datos.Cells(rd, 1) <> ""         cadena = xc & Left(datos.Cells(rd, 3), Len(datos.Cells(rd, 3)) - 6) & xc & "," & xc         For i = 7 To 11             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc         For i = 12 To 56             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc & datos.Cells(rd, 1) & xc         Cells(rs, 1) = cadena         rs = rs + 1         rd = rd + 1     Loop End Sub  
    • Disculpa que no te lo regrese en el archivo, pero mi nivel de membresía no me permite completar al 100% el apoyo que solicitan.
    • Copia la macro y el resultado lo pondrá en la Hoja2... Saludos Sub genera_txt()     Set datos = Worksheets("Hoja1")     Sheets("hoja2").Select     Dim cadena As String     Range("a27:a5000").ClearComments     rd = 2     rs = 27     xc = Chr(34)     Do While datos.Cells(rd, 1) <> ""         cadena = xc & Left(datos.Cells(rd, 3), Len(datos.Cells(rd, 3)) - 6) & xc & "," & xc         For i = 6 To 10             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc         For i = 11 To 56             cadena = cadena & datos.Cells(rd, i)         Next         cadena = cadena & xc & "," & xc & datos.Cells(rd, 1) & xc         Cells(rs, 1) = cadena         rs = rs + 1         rd = rd + 1     Loop End Sub  
    • Todas tus celdas deberán tener formato numérico.
  • Recently Browsing

    No registered users viewing this page.

×
×
  • Create New...

Important Information

Privacy Policy