Inquiridor
Salvar planilha em pdf automaticamente (renomeando)

Pergunta
-
Boa noite
Tenho uma planilha que roda um VBA excel que seleciono em um "combobox" um determinado tempo (horas ou min ou seg) que vai imprimindo em uma impressora "pdf" dentro do tempo selecionado. O problema e que preciso estar presente para apontar o caminho e o nome do arquivo. Gostaria de um codigo que gerasse o nome do arquivo e salvasse sem precisar da presença para apontar o caminho e nome do arquivo.
Todas as Respostas
-
-
Segue:
1º Parte
Dim Time As String
Dim trigger
Sub Print_Log() 'Rotina para imprimir em pdf o Log
If Tela_Inicial.Label8.Caption = "RUNNING" Then
Sheet1.CommandButton1.Visible = False
Sheet2.CommandButton1.Visible = False
Sheet3.CommandButton1.Visible = False
ThisWorkbook.PrintOut
Sheet1.CommandButton1.Visible = True
Sheet2.CommandButton1.Visible = True
Sheet3.CommandButton1.Visible = True
Executa 'Chama Sub Executa para contar o tempo
End If
End Sub
Sub Executa() 'Rotina que executa por um determinado intervalo de tempo
Time = Tela_Inicial.ComboBox1.Value & ":" & Tela_Inicial.ComboBox2.Value
If Tela_Inicial.Label8.Caption = "RUNNING" Then
trigger = Now + TimeValue(Time)
Application.OnTime trigger, "Print_Log" 'Start Log
Else
Application.OnTime trigger, "Print_Log", , False 'Stop Log
End If
End Sub2º parte
Private Sub UserForm_Initialize()
Dim contador
'Inicializacao das variaveis
Tela_Inicial.Caption = "Auto Running Log"
'Inicia a execucao do script
Label8.Caption = Sheet1.Cells(7, 8).Value
CommandButton2.Caption = Sheet1.Cells(7, 9).Value
If Label8.Caption = "STOPPED" Then
Sheet1.CommandButton1.BackColor = RGB(255, 0, 0)
Sheet2.CommandButton1.BackColor = RGB(255, 0, 0)
Sheet3.CommandButton1.BackColor = RGB(255, 0, 0)
Else
Sheet1.CommandButton1.BackColor = RGB(0, 255, 80)
Sheet2.CommandButton1.BackColor = RGB(0, 255, 80)
Sheet3.CommandButton1.BackColor = RGB(0, 255, 80)
End If
contador = 0
While contador < 24 'HORAS
ComboBox1.AddItem contador
contador = contador + 1
Wend
contador = 0
While contador < 60 'MINUTOS
ComboBox2.AddItem contador
contador = contador + 1
Wend
ComboBox1.Value = Sheet1.Cells(7, 10).Value
ComboBox2.Value = Sheet1.Cells(7, 11).Value
End Sub
Private Sub CommandButton1_Click()
'Print Now
Sheet1.CommandButton1.Visible = False
Sheet2.CommandButton1.Visible = False
Sheet3.CommandButton1.Visible = False
ThisWorkbook.PrintOut
Sheet1.CommandButton1.Visible = True
Sheet2.CommandButton1.Visible = True
Sheet3.CommandButton1.Visible = True
End Sub
Private Sub CommandButton2_Click() 'Start/Stop Button
If CommandButton2.Caption = "Stop" Then
Label8.Caption = "STOPPED"
CommandButton2.Caption = "Start"
Sheet1.CommandButton1.BackColor = RGB(255, 0, 0)
Sheet2.CommandButton1.BackColor = RGB(255, 0, 0)
Sheet3.CommandButton1.BackColor = RGB(255, 0, 0)
ElseIf CommandButton2.Caption = "Start" Then
Label8.Caption = "RUNNING"
CommandButton2.Caption = "Stop"
Sheet1.CommandButton1.BackColor = RGB(0, 255, 80)
Sheet2.CommandButton1.BackColor = RGB(0, 255, 80)
Sheet3.CommandButton1.BackColor = RGB(0, 255, 80)
End If
Call Executa
End Sub
Private Sub UserForm_Terminate()
Sheet1.Cells(7, 8).Value = Label8.Caption
Sheet1.Cells(7, 9).Value = CommandButton2.Caption
Sheet1.Cells(7, 10).Value = ComboBox1.Value
Sheet1.Cells(7, 11).Value = ComboBox2.Value
End Sub
-
Ao inserir um código no fórum, utilize blocos de código. Para utilizar essa ferramenta, clique no botão cuja legenda é “Inserir bloco de código” na barra do editor de mensagens do fórum. Uma janela aparecerá onde você deverá colar seu código cru na caixa de texto à esquerda. Então, selecione a opção Vb.Net na caixa de combinação que você verá em cima à esquerda e depois clique no botão Inserir.
---
Troque a instrução:
ThisWorkbook.PrintOut
por:
'Escreva o nome das planilhas que deseja imprmir ThisWorkbook.Worksheets(Array("Plan1", "Plan2", "Plan3")).Select ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="c:\seu_caminho\arquivo.pdf", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=False
http://www.ambienteoffice.com.br - http://www.clarian.com.br
-
-
-
-
-