Boa tarde professores vocês me ajudam muito todo dia, e desculpem minha falta de conhecimento em VBA, mas estou necessitando fazer alguma coisas e estou aprendendo a cada dia.
Hoje estou tentando fazer um botão que manda dados de um formulario com dados de uma tabela para preencher uma procuração com nome clientes e dados peguei um código aqui mesmo no forum para fazer isso, porem cada hora da um erro e não consigo concluir a operação do botão. Segue o Codigo adaptado que peguei em algum lugar aqui do forum.
Private Sub BtProc_Click()
#Const DESENV = -1
On Error GoTo TrataErro
Dim oApp As Object 'Cria uma variável objeto
Dim strSQL As String
' Inicia o MS Word
Set oApp = CreateObject("Word.Application") 'Cria e abre o objeto Word
With oApp
' Torna o MS Word visível
Visible = True
' Abre o documento base
.Documents.Open ("C:\Users\Junior\Google Drive\Aprendizado\Procuração Pessoa Física.doc")
'Move cada campo para o indicador definido no documento
.ActiveDocument.Bookmarks("txtCliente").Select
.Selection.Text = (CStr(Forms!FormClientes!Cliente))
.ActiveDocument.Bookmarks("txtNascimento").Select
.Selection.Text = (CStr(Forms!FormClientes!Nascimento))
.ActiveDocument.Bookmarks("txtEstadoCivil").Select
.Selection.Text = (CStr(Forms!FormClientes!EstadoCivil))
.ActiveDocument.Bookmarks("Profissao").Select
.Selection.Text = (CStr(Forms!FormClientes!Profissao))
.ActiveDocument.Bookmarks("txtNomeMae").Select
.Selection.Text = (CStr(Forms!FormClientes!NomeDaMae))
.ActiveDocument.Bookmarks("txtNomePai").Select
.Selection.Text = (CStr(Forms!FormClientes!NomeDoPai))
.ActiveDocument.Bookmarks("txtRg").Select
.Selection.Text = (CStr(Forms!FormClientes!RG))
.ActiveDocument.Bookmarks("txtCpf").Select
.Selection.Text = (CStr(Forms!FormClientes!CIC))
.ActiveDocument.Bookmarks("txtCtps").Select
.Selection.Text = (CStr(Forms!FormClientes!CTPS))
.ActiveDocument.Bookmarks("txtSerie").Select
.Selection.Text = (CStr(Forms!FormClientes!Série))
.ActiveDocument.Bookmarks("txtPis").Select
.Selection.Text = (CStr(Forms!FormClientes!PIS))
.ActiveDocument.Bookmarks("txtEndereço").Select
.Selection.Text = (CStr(Forms!FormClientes!Endereço))
.ActiveDocument.Bookmarks("txtBairro").Select
.Selection.Text = (CStr(Forms!FormClientes!Bairro))
.ActiveDocument.Bookmarks("txtCidade").Select
.Selection.Text = (CStr(Forms!FormClientes!Cidade))
.ActiveDocument.Bookmarks("txtUf").Select
.Selection.Text = (CStr(Forms!FormClientes!UF))
.ActiveDocument.Bookmarks("txtCep").Select
.Selection.Text = (CStr(Forms!FormClientes!CEP))
.ActiveDocument.Bookmarks("txtTelefone").Select
.Selection.Text = (CStr(Forms!FormClientes!Telefone))
'Salva o arquivo gerado
.ActiveDocument.SaveAs "C:\Users\Junior\Google Drive\Aprendizado\Procuração Pessoa Física teste.doc"
MsgBox "Documento salvo com sucesso...", vbInformation
'Fecha o documento
.ActiveDocument.Close
End With
'Fecha o Word
oApp.Quit
Dim x As String
x = "C:\Users\Junior\Google Drive\Aprendizado\Procuração Pessoa Física.doc" & "Clientes " & Replace(Me.Cliente, "/", "-") & " " & CurrentUser() & ".doc"
Dim Word As New Word.Application
With Word
.Documents.Open x
.Visible = True
.WindowState = wdWindowStateMaximize
End With
'Libera a memória
Set oApp = Nothing
Saida:
Exit Sub
TrataErro:
'Se um campo do formulário estiver vazio, remove o texto do Indicador e continua
If Err.Number = 94 Then
oApp.Selection.Text = ""
Resume Next
End If
MsgBox "FormClientes - BtProc_Click" & vbCrLf & Err.Description, vbExclamation + vbOKOnly, "Erro: " & CStr(Err.Number)
#If DESENV Then
oApp.Quit
Set oApp = Nothing
Stop
Resume
#End If
Resume Saida
End Sub
O diretório está no google drive pois trabalho em varios lugares. Porem ao clicar no botão ele da erro FormCliente - BtProc_Click... O membro solicitado da coleção não existe. E ele para em Stop (Destacado em amarelo no codigo)
Oque estou fazendo de errado e como faço pra corrigir e novamente, me desculpem pela minha falta de conhecimento e agradeço desde já.
Hoje estou tentando fazer um botão que manda dados de um formulario com dados de uma tabela para preencher uma procuração com nome clientes e dados peguei um código aqui mesmo no forum para fazer isso, porem cada hora da um erro e não consigo concluir a operação do botão. Segue o Codigo adaptado que peguei em algum lugar aqui do forum.
Private Sub BtProc_Click()
#Const DESENV = -1
On Error GoTo TrataErro
Dim oApp As Object 'Cria uma variável objeto
Dim strSQL As String
' Inicia o MS Word
Set oApp = CreateObject("Word.Application") 'Cria e abre o objeto Word
With oApp
' Torna o MS Word visível
Visible = True
' Abre o documento base
.Documents.Open ("C:\Users\Junior\Google Drive\Aprendizado\Procuração Pessoa Física.doc")
'Move cada campo para o indicador definido no documento
.ActiveDocument.Bookmarks("txtCliente").Select
.Selection.Text = (CStr(Forms!FormClientes!Cliente))
.ActiveDocument.Bookmarks("txtNascimento").Select
.Selection.Text = (CStr(Forms!FormClientes!Nascimento))
.ActiveDocument.Bookmarks("txtEstadoCivil").Select
.Selection.Text = (CStr(Forms!FormClientes!EstadoCivil))
.ActiveDocument.Bookmarks("Profissao").Select
.Selection.Text = (CStr(Forms!FormClientes!Profissao))
.ActiveDocument.Bookmarks("txtNomeMae").Select
.Selection.Text = (CStr(Forms!FormClientes!NomeDaMae))
.ActiveDocument.Bookmarks("txtNomePai").Select
.Selection.Text = (CStr(Forms!FormClientes!NomeDoPai))
.ActiveDocument.Bookmarks("txtRg").Select
.Selection.Text = (CStr(Forms!FormClientes!RG))
.ActiveDocument.Bookmarks("txtCpf").Select
.Selection.Text = (CStr(Forms!FormClientes!CIC))
.ActiveDocument.Bookmarks("txtCtps").Select
.Selection.Text = (CStr(Forms!FormClientes!CTPS))
.ActiveDocument.Bookmarks("txtSerie").Select
.Selection.Text = (CStr(Forms!FormClientes!Série))
.ActiveDocument.Bookmarks("txtPis").Select
.Selection.Text = (CStr(Forms!FormClientes!PIS))
.ActiveDocument.Bookmarks("txtEndereço").Select
.Selection.Text = (CStr(Forms!FormClientes!Endereço))
.ActiveDocument.Bookmarks("txtBairro").Select
.Selection.Text = (CStr(Forms!FormClientes!Bairro))
.ActiveDocument.Bookmarks("txtCidade").Select
.Selection.Text = (CStr(Forms!FormClientes!Cidade))
.ActiveDocument.Bookmarks("txtUf").Select
.Selection.Text = (CStr(Forms!FormClientes!UF))
.ActiveDocument.Bookmarks("txtCep").Select
.Selection.Text = (CStr(Forms!FormClientes!CEP))
.ActiveDocument.Bookmarks("txtTelefone").Select
.Selection.Text = (CStr(Forms!FormClientes!Telefone))
'Salva o arquivo gerado
.ActiveDocument.SaveAs "C:\Users\Junior\Google Drive\Aprendizado\Procuração Pessoa Física teste.doc"
MsgBox "Documento salvo com sucesso...", vbInformation
'Fecha o documento
.ActiveDocument.Close
End With
'Fecha o Word
oApp.Quit
Dim x As String
x = "C:\Users\Junior\Google Drive\Aprendizado\Procuração Pessoa Física.doc" & "Clientes " & Replace(Me.Cliente, "/", "-") & " " & CurrentUser() & ".doc"
Dim Word As New Word.Application
With Word
.Documents.Open x
.Visible = True
.WindowState = wdWindowStateMaximize
End With
'Libera a memória
Set oApp = Nothing
Saida:
Exit Sub
TrataErro:
'Se um campo do formulário estiver vazio, remove o texto do Indicador e continua
If Err.Number = 94 Then
oApp.Selection.Text = ""
Resume Next
End If
MsgBox "FormClientes - BtProc_Click" & vbCrLf & Err.Description, vbExclamation + vbOKOnly, "Erro: " & CStr(Err.Number)
#If DESENV Then
oApp.Quit
Set oApp = Nothing
Stop
Resume
#End If
Resume Saida
End Sub
O diretório está no google drive pois trabalho em varios lugares. Porem ao clicar no botão ele da erro FormCliente - BtProc_Click... O membro solicitado da coleção não existe. E ele para em Stop (Destacado em amarelo no codigo)
Oque estou fazendo de errado e como faço pra corrigir e novamente, me desculpem pela minha falta de conhecimento e agradeço desde já.