Página 1 de 1
Gravar formulário
Enviado: 27 Jan 2016 às 15:29
por lucianolopes
Olá a todos!
Tenho um formulário de Pedido de Compras onde necessito diferenciar os tipos de formulários que serão gravados, tais como:
Requisição
Orçamento
Pedido
Para cada um deles necessito gravar em pasta diferente para organizar e separar os tipos de formulários.
Além disso, necessito vincular o nome do arquivo que conterá o número do Centro de Custo da Obra, e, ao salvar, o Excel identificará a pasta correta onde o arquivo deverá ser salvo. Por exemplo:
Pasta- C:\Excel\Orçamentos\"Centro de Custo" (será atribuído um número na configuração 3.100.083 - sempre com 9 caracteres)
Essa forma de gravação diferenciada também valerá para arquivo em PDF, pois, para cada Pedido é gerado um arquivo PDF. Então a pasta para gravação seria:
C:\PDF\Orçamentos\"Centro de Custo".
Não sei se fui claro, mas se alguem puder ajudar, agradeço.
Att.
Luciano
Re: Gravar formulário
Enviado: 27 Jan 2016 às 16:43
por daniexcel
tente adaptar para sua planilha
EXPORTAR PDF:
Código: Selecionar todosSub SalvarPDF_Click()
vbSimNao = 0
vbSimNao = MsgBox("Deseja realmente relatorio " & [g11].Value & " ?", vbYesNo, "Exportar Relatório")
'se resposta for sim, ele exclui, sai e desmarca
If vbSimNao = 6 Then
Sheets("ND").Visible = True
myMesExp = Format(Month(Date), "00") 'STRING
myAnoExp = Format(Year(Date), "0000") 'STRING
myDataExp = "ND " & Left([A1].Value, 4) & "-" & Right([A1].Value, 3) 'STRING, onde A1 é a celula com nome do arquivo
NDPDF = ThisWorkbook.Path & "\" & myDataExp & ".pdf"
Sheets("ND").Range("a1:h51").ExportAsFixedFormat Type:=xlTypePDF, _ 'insira o intervalo que deve ser exportado como pdf
Filename:=NDPDF
ActiveWorkbook.Save
MsgBox ("O relatorio " & [A1].Value & " foi exportado para a pasta (" & ThisWorkbook.Path & ")."), _
vbInformation, "Status da Exportação"
Else
Exit Sub
End If
End Sub
SALVAR ARQUIVO
Código: Selecionar todosSub Save_File()
vbSimNao = MsgBox("Tem certeza que deseja salvar o arquivo " & [A1].Value & " - " & [A1].Value & "?", vbYesNo, "FTI Consulting")
'se resposta for sim, ele exclui, sai e desmarca
If vbSimNao = 6 Then
Sheets("MAIN").Select
ActiveWindow.SelectedSheets.Visible = False
' salva o arquivo na pasta
On Error Resume Next
Dim Caminho As String 'declaracao da variável caminho
Caminho = [A2].Value & "\"
ActiveWorkbook.SaveAs Filename:=Caminho & [A3].Value & ".xls"
MsgBox ("Planilha Salva Como : ") & [A1].Value & ".xls na pasta " & [A2].Value & " " _
, vbInformation, "FTI CONSULTING"
Else
Sheets("Main").Select
Exit Sub
End If
End Sub
Espero ter ajudado
Re: Gravar formulário
Enviado: 27 Jan 2016 às 17:41
por lucianolopes
Obrigado Dani!
Infelizmente não consegui fazer funcionar a macro.
Estou anexando o arquivo, se puder verificar, agradeço. Devo ter inserido algum intervalo errado e aparece informação de erro na macro.
Grato
Re: Gravar formulário
Enviado: 28 Jan 2016 às 08:30
por lucianolopes
Olá a todos!
Ainda com relação à esse tópico, vou tentar esclarecer melhor a necessidade.
Tenho um formulário de Pedido de Compras onde necessito diferenciar os tipos de formulários que serão gravados, tais como:
Requisição
Orçamento
Pedido
Para cada um deles necessito gravar o arquivo na pasta de trabalho correspondente, sendo: O arquivo Requisição ser gravado na pasta C:\Excel\...\Requisição - Orçamento, na pasta C:\Excel\...\Orçamento e Pedido na pasta C:\Excel\...\Pedido.
Resumindo, a macro irá identificar o arquivo e irá gravá-lo na pasta correta.
Essa forma de gravação diferenciada também valerá para arquivo em PDF, pois, para cada Pedido/Orçamento/Requisição é gerado um arquivo PDF. Então a pasta para gravação seria:
C:\PDF\Orçamentos...ou Pedidos ou Requisição.
Se alguém puder auxiliar, na mensagem anterior eu anexei o arquivo, inclusive com as macros já em uso para avaliação.
Grato