Macro borrar datos de hoja sin borrar formato
Tengo una macro con la que me ayudaron, trabaja muy bien la cual busca datos en un libro y los anota en una hoja llamada buscador, pero a esta hoja no puedo darle formato ya que se elimina al usarlo, es decir por ejemplo si le pongo un fondo a la hoja de buscador o un relleno a las celdas se elimina al ejecutar el macro. Habrá forma que conserve el formato y en lo posible oculte las reglas de excel para que se vea un poco mejor. Y parezca un poco mas un programa. Bueno ójala me puedan ayudar anexo el código.
Sub ejemplo()
'por On Error GoTo salida
fila = 2 Application.DisplayAlerts = False
For Each hoja In ActiveWorkbook.Sheets
If hoja.Name = "buscador" Then hoja.Delete
Next ActiveWorkbook.Sheets.Add Before:=Worksheets("monografías bob")
ActiveSheet.Name = "buscador"
dato = InputBox("qué dato buscamos????")
If dato = "" Then Exit Sub
dato = UCase(dato)
For x = 1 To Sheets.Count Sheets(x).Select For Each celda In ActiveSheet.UsedRange
If UCase(celda) Like "*" & dato & "*" Then
Sheets("buscador").Cells(fila, 1).Value = Sheets(x).Name
Sheets("buscador").Cells(fila, 2).Value = celda.Address(False, False)
Sheets("buscador").Cells(fila, 3).Value = celda.Value
Sheets("buscador").Cells(fila, 4).Value = celda.Offset(0, 1).Value
fila = fila + 1 End If Next Next Sheets("buscador").Select MsgBox "los encuentros están anotados en la hoja buscador" Sheets("buscador").Select Range("a1").Value = "HOJA" Range("b1").Value = "DIRECCIÓN" Range("c1").Value = "VALOR DE LA CELDA" Range("d1").Value = "VALOR DE LA CELDA CONTIGUA" ActiveSheet.Columns("a:d").EntireColumn.AutoFit Columns("D:D").Select With Selection .HorizontalAlignment = xlLeft End With Range("a1").Select Exit Sub salida: MsgBox "ha ocurrido algún error, vuelva a ejecutar la búsqueda" End Sub