Una macro para varias funciones (auto numerar, guardar con nombre especial, ubicación automática)

He lei do miles de posts buscando la forma de hacer dos cosas:

1) Que al abrir una plantilla de excel para crear un nuevo archivo (una orden de compra por ejemplo), tome un número correlativo que aumenta cada vez que la plantilla se abre nuevamente.

2) Al terminar de usar la plantilla (cualquiera) presiono el icono para guardar o guardar como y deseo que tome varios datos de la misma hoja excel para generar el nombre del archivo. Por ejemplo: "OC0001 - 20160404 - PROVEEDOR", siendo

celda A1 = "OC"

celda A2 = " - "

celda G12 = yyyymmdd

celda C11 = texto ingresado en el campo que corresponde al nombre del proveedor

Para el 1) he usado:

Private Sub Workbook_Open()

respuesta = MsgBox("¿ Es una nueva OC ?", vbYesNo)

If respuesta = vbYes Then

Range("G5").Value = Range("G5").Value + 1

End If

End Sub

Para el 2) he intentado varias opciones como:

Private Sub Workbook_Close()

OC = Range("A1").Value & Range("A2") & Format(Range("G12").Value, "yyyymmdd") & Range("A2") & Range("C11").Value

Range("G5").Value

ThisWorkbook.SaveAs Filename:=OC

End Sub

Logro que funcione la numeración automática pero no logro que al querer guardar luego de completar la orden de compra, tome los datos para generar el nombre del archivo.

Además, me gustaría que ese archivo automáticamente lo guardara en una carpeta determinada donde están todas las ordenes de compra; esto ha resultado especialmente difícil ya que uso un MAC donde las rutas de las carpetas son diferentes al PC.

Añade tu respuesta

Haz clic para o