Ayuda al imprimir pegatinas en Excel

Hola.No sé si lo que voy a exponer es viable. Tengo un archivo en Excel con 2 columnas y quiero imprimir en pegatinas dicha información.
En la pegatina tendría que ir:
En una primera línea la columna 1.
En una segunda línea la columna 2.
¿Sería posible?.
Gracias.

1 Respuesta

Respuesta
1
Supongo que a lo que te refieres es a poder tener dos lineas en una misma celda. Esto no es posible en excel (que yo sepa)pero puedes hacer la siguiente trampa para obtener el mismo resultado (aunque más trabajoso). Crea una tercera columna en ella inserta la siguiente fórmula:
=C1&" "&D1 suponiendo qiue la primera columna en la c y la segunda la D. Y no olvides dejar el espacio entrecomillado.
Después selecciona Formato/Celdas y en alineación vertical selecciona Justificar. Ajustando el ancho de la columna aparecerá la celda con dos lineas. Antes de hacerlo te recomiendo que hagas una copia de la hoja ya que el tamaño de las celdas en la vertical se modificara y luego puede ser molesto trabajar con las celdas de origen.
Algo más sencillo es hibridar ambas columnas en una única y luego ir imprimiendo, al ser tedioso se puede hacer una macro, si quieres coméntamelo y te digo el código
Hola. Gracias por contestar tan rápido.
Creo que no me he explicado bien. No quiero introducir 2 líneas en una celda.Lo que quiero es:
Yo tengo una tabla en excel con 2 columnas y lo que pretendo, si es posible, es imprimir en pegatinas (individuales) esas 2 columnas. En esas columnas yo tengo cosas diferentes. Es decir, si en la columna "c" tengo código POR y en la columna "d" tengo descripción Y, lo que quiero es que al imprimir en una pegatina me coja de la columna "c" el código POR en una línea y en otra línea pero en la misma pegatina que escriba la descripción Y de la columna "d".Gracias por todo. Sonia.
No acabo de comprender el problema, ya sabes lo evidente para el que lo tiene que hacer no lo es para el que se lo tiene que imaginar pero creo que puede ser una de dos cosas:
1:Tienes una base de datos con dos campos y quieres imprimir una etiqueta cada vez, si este es el caso puedes hacerlo manualmente o mediante código.
Manualmente: copia el valor del campo 1 en una celda y el del campo 2 en la celda inmediatamente inferior, selecciona ambas celdas y en Archivo/Area de impresión selecciona establecer área de selección, si tienes configurada la impresora con el tamaño de etiqueta esta se imprimirá tal y como tu quieres. Lo mismo se puede hacer con el siguiente código:
Vete al editor VBA (ALT+F11), del menu insertar inserta modulo y copia en éste este código:
Sub Impresión1()
Teo = ActiveCell.Address
Range(Teo).Offset(0, 2).EntireColumn.Insert
Range(Teo).Offset(0, 2).Value = Range(Teo)
Range(Teo).Offset(1, 2).Value = Range(Teo).Offset(1, 0)
Set Capo = Application.Union(Range(Range(Teo).Offset(0, 2).Address), Range(Range(Teo).Offset(1, 2).Address))
ActiveSheet.PageSetup.PrintArea = Capo.Address
Capo.EntireColumn.AutoFit
MsgBox "Se Imprimiría la siguiente etiqueta" & Chr(13) & ActiveCell.Value & Chr(13) & ActiveCell.Offset(1, 0).Value
'ActiveWindow.SelectedSheets.PrintOut Copies:=1
Range(Teo).Offset(0, 2).EntireColumn.Delete
End Sub
Como veras aquí no se llega a imprimir sino que muestra un mensaje al estar el código cancelado si quieres imprimir, unicamente retira el apostrofe inicial de la linea que aparece en verde.
2.- Quieres automatizar el proceso para imprimir todas las etiquetas de una en una, entonces utiliza el siguiente código:
Sub EtiquetasGlobal()
Teo = ActiveSheet.Name
Tao = ActiveCell.Address
Sheets(Teo).Copy Before:=Sheets(Teo)
ActiveCell.Offset(1, 0).Select
Do Until ActiveCell.Value = ""
Selection.EntireRow.Insert
Selection.EntireRow.Insert
ActiveCell.Offset(3, 0).Select
Loop
Range(Tao).Select
Do Until ActiveCell.Value = ""
ActiveCell.Offset(0, 2).Value = ActiveCell.Value
ActiveCell.Offset(1, 2).Value = ActiveCell.Offset(0, 1).Value
ActiveCell.Offset(3, 0).Select
Loop
Range(Tao).Select
Selection.EntireColumn.Delete
Selection.EntireColumn.Delete
Selection.EntireColumn.AutoFit
Selection.EntireColumn.HorizontalAlignment = xlLeft
Range(Tao).Select
Do Until ActiveCell.Value = ""
Set Capo = Application.Union(Range(ActiveCell.Address), Range(ActiveCell.Offset(1, 0).Address))
Tuco = Capo.Address
ActiveSheet.PageSetup.PrintArea = Capo.Address
With ActiveSheet.PageSetup
.Orientation = xlLandscape
.PaperSize = xlPaperA4
End With
MsgBox "Se Imprimiría la siguiente etiqueta" & Chr(13) & ActiveCell.Value & Chr(13) & ActiveCell.Offset(1, 0).Value
ActiveWindow.SelectedSheets.PrintOut Copies:=1
ActiveCell.Offset(3, 0).Select
Loop
End Sub
Espero haberte ayudado con alguna de las soluciones sino preguntame de nuevo.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas