Saltar al contenido

Archivo personal.xlsb


JoaoM

Recommended Posts

publicado

Ya está y no puedo cambiarlo

Parece que me equivoque de foro. Si es así, por favor el moderador

Hola amig@s, espero me saquen de esta incognita

Crie un libro de macros personal, se guardo en User/nombre/AppData/Roaming/Microsoft/Excel/XLSTART

No me resulto porque cada ves que usaba la macro, no me daba los resultados deseados

Proceso con la macro en el libro PERSONAL.XLSB: a pasar datos a pdf

Abria un libro con datos

Pegaba un boton en la hoja activa del libro con los datos para pasarlos a PDF y le asignaba la macro del archivo PERSONAL.XLSB.

Me cria el archivo pero, sin nombre (solo esto _-.pdf) no con el nombre descripto en la varianle de la macro y vacio, sin dato alguno.

¿Será que en la macro que integre al PERSONAL.XLSB, requier algun dato o linea que mencione el libro activo? o hoja activa?

Est la macro

Sub GuardaSinMacros()
Dim ruta As String
Dim nombre As String
Dim wb As Object
Dim i As Long
Dim d As String
ruta = "D:\Datos Mecanicos\" 'Ruta donde guarda los archivos xlsx y PDF
Application.ScreenUpdating = False
Application.DisplayAlerts = False
ActiveSheet.Unprotect "By Jot@" 'Anula esta linea si no existe protección de hoja
With ThisWorkbook.Sheets(1)
'Nombre para los archivos, xlsx y PDF
nombre = .Range("G4") & "_" & .Range("C13") & " " & .Range("D13") & "-" & .Range("H13").Value
.Copy
End With
Set wb = Workbooks(Workbooks.Count)
With wb
'Si no necesita, anular el siguiente With con el Select Case y Next o cambiar la celda por las tuyas
With .Sheets(1)
For i = .Shapes.Count To 1 Step -1
d = .Shapes(i).TopLeftCell.Address(False, False)
Select Case d
Case "J2": .Shapes(i).Delete
Case "J3": .Shapes(i).Delete
Case "L3": .Shapes(i).Delete
End Select
Next
.SaveAs Filename:=ruta & nombre & ".xlsx", FileFormat:=xlOpenXMLWorkbook, _
CreateBackup:=False
With .Range("B2:J60") 'puede modificar el rango si es necesario
'Exporta el rango a archivo PDF
.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ruta & nombre & ".pdf", _
Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=False
.Copy
.PasteSpecial xlPasteValues
Application.CutCopyMode = False
Range("A2").Select 'DEseleccionar el rango en la copia
End With
With .Cells
.Locked = True
.FormulaHidden = False
End With 'Protege la copia .xlsx
.Protect Password:="By Jot@", DrawingObjects:=True, Contents:=True, Scenarios:=True
.EnableSelection = xlNoSelection 'Restringe todo, seleccion y escritura
End With
'cria el archivo .xlsx
.SaveAs Filename:=ruta & nombre & ".xlsx", FileFormat:=xlOpenXMLWorkbook, _
CreateBackup:=False
.Close True
End With
Set wb = Nothing
Application.DisplayAlerts = True
Application.ScreenUpdating = True
'sumar 1 en la celda I3, si no necesita, anula el suiguiente With
With ThisWorkbook
With .Sheets(1).Range("I3")
.Value = .Value + 1
End With
End With
ActiveSheet.Protect "By Jot@" 'Anula esta linea si no necesitas
End Sub
[/CODE]

Otro aunto y fue el que me traigo aqui es;

Elimine dicho archivo de la carpeta XLSTART para que no volviera a aparecer pero si, no aparece per osi uso la grabadora de macros, si que se hace presente, SI NQUE EXISTA en ninguna parte del disco porque le hice una busqueda por su nombre y nada que encuentra.

¿Como hago para que usando la grabadora o no de macros, no me aparezca el espirito del archivo en Excel?

PERSONAL.zip

  • Silvia bloqueó este tema

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.