SALVANDO APENAS ARQUIVO BAKUP
Oi gente, tudo bem?
Tem jeito de criar um código que salve apenas o arquivo backup de uma planilha? Ou seja, quando eu clicar no botão, ela criará apenas o arquivo backup em um diretório preservando a planilha anterior para continuar editando e possÃvelmente fazendo os backup[ô]s quando necessário.
Tem jeito de criar um código que salve apenas o arquivo backup de uma planilha? Ou seja, quando eu clicar no botão, ela criará apenas o arquivo backup em um diretório preservando a planilha anterior para continuar editando e possÃvelmente fazendo os backup[ô]s quando necessário.
Precisa ser realmente em VB?
Se puder ser uma batch DOS o que acho mais viável para o seu caso e você pode usar o próprio windows pra executar em horários programados...
Segue um exemplo:
Supondo que vc tenha em sua máquina o Winrar instalado... Digite as linhas abaixo em um documento de texto e salve como backup.bat
@echo off
FOR /f [Ô]tokens=1-4 delims=/ [Ô] %%a IN ([ô]DATE /T[ô]) do (SET MYDATE=%%a%%b%%c%%d)
for /f [Ô]tokens=1-2 delims=: [Ô] %%a in ([ô]TIME /T[ô]) do (set MYTIME=%%ah%%bm)
C:\Arquivos de programas\WinRAR\RAR A Nome_sua_Planilha_%MYDATE%_%MYTIME%.rar E:\Pasta_Sua_Planilha\Nome_sua_Planilha.xls
MOVE C:\Arquivos de programas\WinRAR\Nome_sua_Planilha_%MYDATE%_%MYTIME% E:\local_do_backup
EXIT
O Script acima irá criar um arquivo compactado já com a data e hora do backup de sua planilha... Existem ainda n possibilidades como por exemplo após o backup enviar este arquivo para um FTP.
Veja se atende a sua necessidade e em caso de dúvidas só postar. E claro que o processo acima pode ser melhorado e o arquivo de backup ser gerado em outros locais...
Com a ajuda do agendador de tarefas você coloca o backup automático....
Abs
Se puder ser uma batch DOS o que acho mais viável para o seu caso e você pode usar o próprio windows pra executar em horários programados...
Segue um exemplo:
Supondo que vc tenha em sua máquina o Winrar instalado... Digite as linhas abaixo em um documento de texto e salve como backup.bat
@echo off
FOR /f [Ô]tokens=1-4 delims=/ [Ô] %%a IN ([ô]DATE /T[ô]) do (SET MYDATE=%%a%%b%%c%%d)
for /f [Ô]tokens=1-2 delims=: [Ô] %%a in ([ô]TIME /T[ô]) do (set MYTIME=%%ah%%bm)
C:\Arquivos de programas\WinRAR\RAR A Nome_sua_Planilha_%MYDATE%_%MYTIME%.rar E:\Pasta_Sua_Planilha\Nome_sua_Planilha.xls
MOVE C:\Arquivos de programas\WinRAR\Nome_sua_Planilha_%MYDATE%_%MYTIME% E:\local_do_backup
EXIT
O Script acima irá criar um arquivo compactado já com a data e hora do backup de sua planilha... Existem ainda n possibilidades como por exemplo após o backup enviar este arquivo para um FTP.
Veja se atende a sua necessidade e em caso de dúvidas só postar. E claro que o processo acima pode ser melhorado e o arquivo de backup ser gerado em outros locais...
Com a ajuda do agendador de tarefas você coloca o backup automático....
Abs
JAYJR, blz!
Não, isso que eu quero é VBA, é uma ação para ser realizada em uma planilha.
Obrigado!
Não, isso que eu quero é VBA, é uma ação para ser realizada em uma planilha.
Obrigado!
Hummmmmmmmmmm... não havia entendido... Sou novo no fórum...rsrs
Achei alguns links que talvez lhe ajude:
http://www.tomasvasquez.com.br/forum/viewtopic.php?f=6&t=226
http://www.tomasvasquez.com.br/forum/viewtopic.php?f=6&t=107&p=615
http://www.babooforum.com.br/forum/VBA-no-excel-copia-de-dados-entre-planilhas-t714422.html
Abs
Achei alguns links que talvez lhe ajude:
http://www.tomasvasquez.com.br/forum/viewtopic.php?f=6&t=226
http://www.tomasvasquez.com.br/forum/viewtopic.php?f=6&t=107&p=615
http://www.babooforum.com.br/forum/VBA-no-excel-copia-de-dados-entre-planilhas-t714422.html
Abs
tenta isto
OBS:
O código deve estar inserido na pasta de trabalho a partir da qual serão copiadas as planilhas
Sub Copiar_Planilhas()
Dim ArquivoOrigem As String, ArquivoDestino As String
Dim Plan As Worksheet
Dim N_Plan As Integer
[ô]Captura do nome da pasta de trabalho de origem
ArquivoOrigem = ThisWorkbook.Name
[ô]Abertura da pasta de trabalho de destino
Workbooks.Open Filename:= _
[Ô]C:\Teste.xls[Ô]
[ô]Contagem do nº de planilhas da pasta de destino
N_Plan = ActiveWorkbook.Worksheets.Count
[ô]Captura do nome da pasta de trabalho de destino
ArquivoDestino = ActiveWorkbook.Name
[ô]Loop para copiar cada uma das planilhas da pasta de origem
For Each Plan In ThisWorkbook.Worksheets
Plan.Copy After:=Workbooks(ArquivoDestino).Sheets(N_Plan)
[ô]Incremento da contagem de planilhas da pasta de destino
N_Plan = N_Plan + 1
Next Plan
[ô]Salva as alterações da pasta de destino
Workbooks(ArquivoDestino).Save
End Sub
OBS:
O código deve estar inserido na pasta de trabalho a partir da qual serão copiadas as planilhas
MARCELO-TREZE,
Iseri o código que não está compilando, esta dando as seguites mesagens [Ô]ERRO NO TEMPO DE EXECUÇÃO [ô]1004[ô] : ERRO DE DEFINIÇÃO DE APLICATIVO OU DE DEFINIÇÃO DE OBJETO. [Ô].
Obrigado.
Iseri o código que não está compilando, esta dando as seguites mesagens [Ô]ERRO NO TEMPO DE EXECUÇÃO [ô]1004[ô] : ERRO DE DEFINIÇÃO DE APLICATIVO OU DE DEFINIÇÃO DE OBJETO. [Ô].
Obrigado.
E aà gente!
Peguei um exemplo em um dos links postados pelo nosso amigo JAYJR. Tem um botão que chama um formulário com dois textbox[ô]s, o primeiro pede o nome do diretório que vai ser salvo o documento e o segundo pede o nome do arquivo sendo obrigatório colocar a extensão .xls para gerar o arquivo.
Pois bem, o que eu queria dos amigos era o seguinte: coloquei um botão do lado do textbox1 para abrir uma janela, e o usuário escolher o diretório, só que eu queria que assim que o usuário escolher o local onde quer salvar, aparecesse este caminho no textbox1 e o arquivo fosse salvo neste local especÃficado no textbox. E para o textbox2 criasse uma forma que o usuário não precisasse colocar a extensão .xls na hora de nomear o arquivo como é feito no momento.
OBS: Estou colocando o link que está o arquivo que modifiquei para ficar mais claro. Desde já agradeço.
http://www.4shared.com/document/21EHxuJa/Backup_de_Arquivo.html
Peguei um exemplo em um dos links postados pelo nosso amigo JAYJR. Tem um botão que chama um formulário com dois textbox[ô]s, o primeiro pede o nome do diretório que vai ser salvo o documento e o segundo pede o nome do arquivo sendo obrigatório colocar a extensão .xls para gerar o arquivo.
Pois bem, o que eu queria dos amigos era o seguinte: coloquei um botão do lado do textbox1 para abrir uma janela, e o usuário escolher o diretório, só que eu queria que assim que o usuário escolher o local onde quer salvar, aparecesse este caminho no textbox1 e o arquivo fosse salvo neste local especÃficado no textbox. E para o textbox2 criasse uma forma que o usuário não precisasse colocar a extensão .xls na hora de nomear o arquivo como é feito no momento.
OBS: Estou colocando o link que está o arquivo que modifiquei para ficar mais claro. Desde já agradeço.
http://www.4shared.com/document/21EHxuJa/Backup_de_Arquivo.html
Estou colocando abaixo o link referente a planilha na qual estava falando, e que estou tentando adaptar. To passando apertado, pois não saco muita coisa de VBA.
http://www.4shared.com/document/sDk-3OZm/70-Localizar_Pasta_e_Contedo.htm
Obrigado
http://www.4shared.com/document/sDk-3OZm/70-Localizar_Pasta_e_Contedo.htm
Obrigado
Alguém sabe me dizer porque que o arquivo não está caindo dentro da pasta criada? O que está faltando? Segue código abaixo.
Sub Backup()
Dim MyFilePath$
MyFilePath$ = [Ô]\BACKUP - RD[Ô]
Dim MeuDir
MeuDir = Me.TextBox1
With Application
.ScreenUpdating = False
.DisplayAlerts = False
On Error Resume Next [ô]<< Se a folder existe
MkDir MyFilePath [ô]<< se não cria uma nova
ThisWorkbook.SaveCopyAs FileName:=MyFilePath & MeuDir & [Ô]REMESSA DE DOCUMENTOS - Backup [Ô] & _
Day(DateSerial(Year(Date), Month(Date), Day(Date))) & [Ô] de [Ô] & _
MonthName(Month(DateSerial(Year(Date), Month(Date), Day(Date)))) & [Ô] de [Ô] & _
Year(DateSerial(Year(Date), Month(Date), Day(Date))) & [Ô].xls[Ô]
MsgBox [Ô]Pronto[Ô]
End With
End Sub
Sub Backup()
Dim MyFilePath$
MyFilePath$ = [Ô]\BACKUP - RD[Ô]
Dim MeuDir
MeuDir = Me.TextBox1
With Application
.ScreenUpdating = False
.DisplayAlerts = False
On Error Resume Next [ô]<< Se a folder existe
MkDir MyFilePath [ô]<< se não cria uma nova
ThisWorkbook.SaveCopyAs FileName:=MyFilePath & MeuDir & [Ô]REMESSA DE DOCUMENTOS - Backup [Ô] & _
Day(DateSerial(Year(Date), Month(Date), Day(Date))) & [Ô] de [Ô] & _
MonthName(Month(DateSerial(Year(Date), Month(Date), Day(Date)))) & [Ô] de [Ô] & _
Year(DateSerial(Year(Date), Month(Date), Day(Date))) & [Ô].xls[Ô]
MsgBox [Ô]Pronto[Ô]
End With
End Sub
Tópico encerrado , respostas não são mais permitidas