Macro Guardar

24/01/2007 - 08:18 por Mafoso | Informe spam
Tengo un libro "complejo" con varias hojas (Pedido, Tarifa, Descuento,
Formulas) y codigo que "pesa" bastante (4Mb).
En la Hoja pedido tengo incrustados varios botones comando, 2 Combobox
(realizados gracias a vuestra ayuda), varios Botones seleccion y, como no,
formulas.
Deseo Insertar boton para guardar el pedido (solo la hoja pedido, sin codigo
ni
formulas y el resto de hojas) solicitando un nombre, hacer que solo se pueda
guardar la hoja con otro nombre mediante este boton ( he visto ejemplo en el
grupo en el que se deshabilita las opciones de Guardar Archivo y sus
variantes, pero no he conseguido que funcione y quiero agregarle mas opciones
y no se como hacerlo(limitadito que es uno...) ), evitando de esta manera que
se pueda modificar el Libro pedido Original. Antes de guardar solicitar un
nombre de archivo al Vendedor (para que sea su referencia, por experiencia
ingresaran nombre cliente) y a dicho nombre agregarle nombre vendedor y fecha
como nombre de archivo a guardar y Guardar archivo.
Muchas Gracias por su tiempo,
Marc.
 

Leer las respuestas

#1 Esteban Dido
24/01/2007 - 23:31 | Informe spam
Hola Mafoso,
Te envío un código que te puede servir. Deberás cambiarle las referencias a
algunas celdas para adaptarlo a tu hoja. Por ejemplo, en la celda C5 está la
fecha y en la celda C7 el nombre del cliente.
Los archivos se guardan en el directorio 'Pedidos más el mes y año actual'.
Si no existe, lo crea.
Además, protege la hoja con un password que siempre es el nombre del archivo
mismo.
¡¡¡Suerte!!!

Esteban
Sub Guardar()
On Error GoTo Fin
Ruta = "C:\Pedidos " & Format([C5], "mmmm yyyy")
NomArch = [C7] & " " & Format(Date, "dd.mm.yyyy") & ".xls"
Pass = NomArch
If Dir(Ruta, vbDirectory) = "" Then MkDir Ruta
If Dir(Ruta & "\" & NomArch) = "" Then
Sheets("Pedido").Unprotect
With Range("A1:Q70")
.Copy
.PasteSpecial xlPasteValues
Application.CutCopyMode = False
Selection.Locked = True
Selection.FormulaHidden = False
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True,
Password:=Pass
End With
[G30].Select
ActiveWorkbook.SaveAs Ruta & "\" & NomArch, xlWorkbookNormal
MsgBox "El archivo ha sido guardado con el siguiente nombre: " & Chr(13) &
_
Ruta & "\" & NomArch, vbInformation, "Guardar"
Else
MsgBox "El archivo ya existe." & Chr(13) & Ruta & "\" & NomArch,
vbCritical, "Guardar"
End If
Exit Sub
Fin:
MsgBox "Ha ocurrido un problema. Procedimiento anulado.", vbExclamation
End Sub
-


"Mafoso" escribió en el mensaje
news:
Tengo un libro "complejo" con varias hojas (Pedido, Tarifa, Descuento,
Formulas) y codigo que "pesa" bastante (4Mb).
En la Hoja pedido tengo incrustados varios botones comando, 2 Combobox
(realizados gracias a vuestra ayuda), varios Botones seleccion y, como no,
formulas.
Deseo Insertar boton para guardar el pedido (solo la hoja pedido, sin


codigo
ni
formulas y el resto de hojas) solicitando un nombre, hacer que solo se


pueda
guardar la hoja con otro nombre mediante este boton ( he visto ejemplo en


el
grupo en el que se deshabilita las opciones de Guardar Archivo y sus
variantes, pero no he conseguido que funcione y quiero agregarle mas


opciones
y no se como hacerlo(limitadito que es uno...) ), evitando de esta manera


que
se pueda modificar el Libro pedido Original. Antes de guardar solicitar un
nombre de archivo al Vendedor (para que sea su referencia, por experiencia
ingresaran nombre cliente) y a dicho nombre agregarle nombre vendedor y


fecha
como nombre de archivo a guardar y Guardar archivo.
Muchas Gracias por su tiempo,
Marc.

Preguntas similares