Bloquear formato de celdas

Saludos cordiales, por favor si me puede ayudar.

En la hoja de excel en la que ingreso datos existen ciertas celdas A3, B9, C5, D9 que no deseo que el formato que tiene en ellas no se modifiquen al pegar un dato.

Ejemplo:

En la celda A3 tengo ingresado el formato de fecha asi, dd-mmm-año.

En la celda B9 tengo ingresado el formato de Texto, que al pegar un dato se mantenga como texto.

C5 formato de texto

D) formato de fecha

Es decir solamente quiero que se mantenga el formato que tiene dichas celdas

Si esto se lo puede hacer con Vba.

Estaré agradecido.

Soy novato en Vba.

1 respuesta

Respuesta
1

Te propongo que pegues todos los datos que quieras y luego de terminar corrar la siguiente macro.

Sub Macro1()
Range("A3").Select
Selection.NumberFormat = "m/d/yyyy"
Range("B9").Select
Selection.NumberFormat = "@"
Range("C5").Select
Selection.NumberFormat = "@"
Range("D9").Select
Selection.NumberFormat = "m/d/yyyy"
End Sub

Atentamente.

Lucas.

NOTA: Ten presente que el formato fecha que te planteo puede variar de acuerdo a la version de Office que tengas. El ejemplo esta realizado con Office 2010. Si tiene otra version tienes que buscar y reemplazar por ejemplo: m/d/yyyy por mm/DD/yyy o su equivalente.

Muchas gracias por la pronta respuesta, funcionó a la perfección, pero al mantener el formato deseo que todas las configuración que están hechas en la celda se mantengan, por ejemplo

* En la celda A3 tengo ingresado el formato de fecha asi, dd-mmm-año. con negrita y alineado a la izquierda
* En la celda B9 tengo ingresado el formato de Texto, que al pegar un dato se mantenga como texto, está con negrita, cursiva y con alineación a la izquierda y con mayúscula

Pues bien agreguemos eso entonces.

Sub Macro1()
Range("A3").Select
Selection.NumberFormat = "m/d/yyyy"

Selection.Font.Bold = True
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("B9").Select
Selection.NumberFormat = "@"

Selection.Font.Bold = True
Selection.Font.Italic = True
With Selection
.HorizontalAlignment = xlRight
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("C5").Select
Selection.NumberFormat = "@"
Range("D9").Select
Selection.NumberFormat = "m/d/yyyy"
End Sub

Añade tu respuesta

Haz clic para o