Dica: Salvar cópia do arquivo atual

Olá caro leitor,
Para que você acompanhe esta dica, seria interessante fazer a leitura do artigo Macro que salva automaticamente as alterações de sua planilha.
Recebi um pedido de help do leitor Allston que dizia:

Otima dica!
Mas veja se oque eu vou explicar é possivel.
Oque eu precisaria era que ele salva-se como um outro arquivo de nome diferente conforme o o dia atual.
por exemplo: Eu crio no dia 1º de novembro de 2010 o arquivo “ExeceldoSeuJeito” e precisária que o Execel desse um “Salvar Como…” e salva-se com o nome “ExeceldoSeuJeito 01-11-2010″ (usei como exemplo o hifem ” – ” porque o windows não aceita a barra ” / ” no nome do arquivo)
Se não for possivel por a data tudo bem, mas tem como fazer “salvar como…” e pré determinar o nome do arquivo? e se possivel pré determinar o nome com o valor de alguma celula?
Att.

Desenvolvi uma possível solução para ele, e agora, transmito a todos vocês.

Sub SalvarCopiaComo()
Dim sExtensao As String
Dim sNomeSalvarComo As String
    sExtensao = Mid(ThisWorkbook.FullName, (InStrRev(StringCheck:=ThisWorkbook.FullName, StringMatch:=".", Compare:=vbTextCompare)))
    sNomeSalvarComo = Left(ThisWorkbook.FullName, (InStrRev(StringCheck:=ThisWorkbook.FullName, StringMatch:=".", Compare:=vbTextCompare) - 1)) _
            & " " & Format(Date, "dd-mm-yyyy") & sExtensao
    ThisWorkbook.SaveCopyAs sNomeSalvarComo
End Sub

O uso da macro acima pode ser reaproveitada na macro citada no artigo original, da seguinte maneira:
Podes substituir a linha de comando “Application.Thisworkbook.Save” por uma chamada da rotina “SalvarCopiaComo“, que vou descrever abaixo, para que seja adicionada ao código.
Ou, também, pode ser utilizada em qualquer outro projeto, adicionada a algum botão de comando ou chamada de eventos do arquivo:
Call SalvarCopiaComo
Espero que seja útil pra vocês.
Abraços.

Deixe um comentário