¿Puedo ingresar una línea de una macro que haga que se me pregunte un dato extra en el nombre de archivo a guardar?
Esto es algo extraño, les comento. Tengo varios archivos que utilizan macros para guardar el archivo que modifico, aquí pasa algo... Los archivos tienen datos que varían, como productos, definiciones y otras cosas, es por eso que me gustaría que al apretar el botón de guardar el archivo se abra una ventana que me permita agregar una información antes, entre o después de las celdas que tomo para generar nombre, es algo extraño por lo que no se si me explique. Esta es la macro que utilizo para guardar;
Sub GUARDAR()
'
' GUARDAR Macro
'
Dim i As Long
Dim FinalRow As Long
Dim NUMEROCOT As Long
Dim Fila As Long
Dim bExiste As Boolean
Dim FechaEmision As Date
Dim Contacto As String
Dim LibroNuevo As String
Dim LibroDestino As String
Dim sNumeroOC As String
Dim NombreHoja As String
Dim Archivo As String
Dim Empresa As String
Dim Telefono As String
Dim Correo As String
'
Archivo = Sheets("GENERAL").Range("Q2").Value
NombreHoja = ActiveSheet.Name
NUMEROCOT = Sheets("GENERAL").Range("E3").Value
FechaEmision = Sheets("General").Range("E4").Value
Contacto = Sheets("General").Range("B3").Value
Empresa = Sheets("General").Range("B4").Value
Telefono = Sheets("General").Range("E5").Value
Correo = Sheets("General").Range("B5").Value
FinalRow = Sheets("Indice").Cells(Rows.Count, 1).End(xlUp).Row
bExiste = False
For i = 2 To FinalRow
If Sheets("Indice").Range("a" & i).Value = NUMEROCOT Then
Fila = i
bExiste = True
Exit For
End If
Next
If bExiste = False Then
Fila = FinalRow + 1
End If
Sheets("Indice").Range("a" & Fila).Value = NUMEROCOT
Sheets("Indice").Range("b" & Fila).Value = Contacto
Sheets("Indice").Range("c" & Fila).Value = Empresa
Sheets("Indice").Range("d" & Fila).Value = Telefono
Sheets("Indice").Range("e" & Fila).Value = Correo
Sheets("Indice").Range("f" & Fila).Value = FechaEmision
MsgBox "Se ha guardado '" & Archivo & "' en hoja INDICE"
Confirmacion = MsgBox("Desea guardar '" & Archivo & "', como archivo nuevo?", _
vbQuestion + vbYesNo, "IHL")
Application.ScreenUpdating = False
If Confirmacion = vbYes Then
'
'
ChDir "C:\Users\Silviom\Dropbox\IHL (1)\IHL Silvio\cotizaciones\excel"
Dim Ruta As String
Ruta = Application.GetSaveAsFilename([Q2]) & ("xls")
If Left(Ruta, 5) <> "Falso" Then
ActiveWorkbook.SaveCopyAs Filename:=Ruta
End If
'
Sheets("GENERAL"). Range("g17:i23"). ClearContents 'borrar celdas
Sheets("GENERAL"). Range("g28:i33"). ClearContents
Sheets("GENERAL"). Range("g38:i43"). ClearContents
Sheets("GENERAL"). Range("m30:o41"). ClearContents
Sheets("GENERAL"). Range("R30:T41"). ClearContents
Sheets("GENERAL"). Range("n28:n29"). ClearContents
Sheets("GENERAL"). Range("S28:S29"). ClearContents
Sheets("GENERAL").Range("b3") = ""
Sheets("GENERAL").Range("b32") = ""
Sheets("GENERAL").Range("b33") = ""
Sheets("GENERAL").Range("g13:g15") = ""
Sheets("GENERAL").Range("g26") = ""
Sheets("GENERAL").Range("g36") = ""
Sheets("GENERAL").Range("g46") = ""
'
ActiveWorkbook.Save
Else
End If
Workbooks.Open Ruta
End Sub