MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Dados do Formulário Gerar no Word e Gravar em Diretorio

    Compartilhe

    Maçom
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 42
    Registrado : 06/02/2010

    [Resolvido]Dados do Formulário Gerar no Word e Gravar em Diretorio

    Mensagem  Maçom em Ter 06 Jun 2017, 18:58

    Boa Tarde, Caríssimos,

    adaptei no meu projeto, com este código do fórum e que , está a funcionar perfeitamente, mas queria:

    1º colocar o Template Word (dotx), em diretório diferente de onde está a base de dados, e o caminho seria G:\GestaoProcessosVistosConsulares\Aplicacao\BD\DocWordTemplate

    2º gravar o documento gerado em diretório diferente de onde está a base de dados
    G:\GestaoProcessosVistosConsulares\DocWordGerado

    já tentei várias formas mas tem dado erro e tive de regressar à forma inicial, se puderem ajudar, agradeço



    Private Sub gerarDoc_Click()
    'ahteixeira (2016) para MaximoAccess
    'Adaptado a partir do exemplo do colega Avelino Sampaio
    'veja a dica 75 - [Você precisa estar registrado e conectado para ver este link.]

    If IsNull(Me.cartaSel) Then MsgBox "Escolha o modelo da carta para gerar.", vbInformation, "": Exit Sub

    Dim wdApl As Object
    Dim strModelo As String
    Set wdApl = CreateObject("Word.Application")
    '--------------------------
    'Abre o arquivo do Word
    '--------------------------
    wdApl.Documents.Open FileName:=CurrentProject.path & "\" & Me.cartaSel.Column(2)
    With wdApl
    'Posiciona o cursor no INDICADOR I1_IDVisto ... e preenche
    .ActiveDocument.Bookmarks("I1_IDVisto").Select: .Selection.Text = Nz(Me.IDVisto)
    .ActiveDocument.Bookmarks("I2_NºORDEM").Select: .Selection.Text = Nz(Me.NºORDEM)
    .ActiveDocument.Bookmarks("I3_PassaporteNº").Select: .Selection.Text = Nz(Me.PassaporteNº)
    '.ActiveDocument.Bookmarks("I4_NOME").Select: .Selection.Text = Me.NOME
    .ActiveDocument.Bookmarks("I5_NOMECompleto").Select: .Selection.Text = Me.NOMECompleto
    .ActiveDocument.Bookmarks("I6_DataNascimento").Select: .Selection.Text = Me.DataNascimento
    .ActiveDocument.Bookmarks("I7_Morada").Select: .Selection.Text = Me.MORADA
    .ActiveDocument.Bookmarks("I7_C_POSTAL").Select: .Selection.Text = Me.C_POSTAL
    .ActiveDocument.Bookmarks("I8_FREGUESIA").Select: .Selection.Text = Me.FREGUESIA
    .ActiveDocument.Bookmarks("I9_CONCELHO").Select: .Selection.Text = Me.CONCELHO
    .ActiveDocument.Bookmarks("I10_EstCivil").Select: .Selection.Text = Me.EstCivil
    .ActiveDocument.Bookmarks("I11_FuncVisto").Select: .Selection.Text = Me.FuncVisto
    .ActiveDocument.Bookmarks("I12_PassaporteDataEmissao").Select: .Selection.Text = Me.PassaporteDataEmissao
    .ActiveDocument.Bookmarks("I13_EntEmissao").Select: .Selection.Text = Me.EntEmissao
    .ActiveDocument.Bookmarks("I14_ValiCTProm").Select: .Selection.Text = Me.ValiCTProm
    .ActiveDocument.Bookmarks("I15_ValorCTProm").Select: .Selection.Text = Me.ValorCTProm

    '---------------------------------------------------------
    'Salva o documento preenchido no mesmo local do aplicativo
    '----------------------------------------------------------
    strLocal = CurrentProject.path & "\" & Me.cartaSel.Column(1) & "-" & Nz(Replace(Me.NºORDEM, " ", "")) & "-" & Format(Now, "hhmmss") & ".doc"
    .ActiveDocument.SaveAs strLocal ', Password:="123"
    '------------------
    'Fecha o documento
    '------------------
    .ActiveDocument.Close
    '-------------
    'Fecha o Word
    '-------------
    .Quit
    End With
    'Limpa a memória
    Set wdApl = Nothing
    '---------------------------------------------------------
    'Abre o documento preechido para visualização e impressão
    '---------------------------------------------------------
    Application.FollowHyperlink strLocal
    End Sub

    Atentamente
    JM
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 9697
    Registrado : 04/11/2009

    Re: [Resolvido]Dados do Formulário Gerar no Word e Gravar em Diretorio

    Mensagem  JPaulo em Qua 07 Jun 2017, 14:01

    Se você quer o local diferente do local do banco, é só apagar esta instrução "CurrentProject.path" e colocar o seu caminho direto no código.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]

    Maçom
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 42
    Registrado : 06/02/2010

    Re: [Resolvido]Dados do Formulário Gerar no Word e Gravar em Diretorio

    Mensagem  Maçom em Qua 07 Jun 2017, 18:11

    Boa Tarde, Caro JPaulo

    Julgo ter feito como indicou, mas dá Syntax Error
    fiz assim:

    'Abre o arquivo do Word
    wdApl.Documents.Open FileName:=wdApl.Documents.Open FileName:=G:\GestaoProcessosVistosConsulares\Aplicacao\BD\DocWordTemplate & "\" & Me.cartaSel.Column(2) & "\" & Me.cartaSel.Column(2)


    'Salva o documento preenchido noutro diretorio
    strLocal =strLocal =G:\GestaoProcessosVistosConsulares\DocWordGerado & "\" & Me.cartaSel.Column(1) & "-" & Nz(Replace(Me.NºORDEM, " ", "")) & "-" & Format(Now, "hhmmss") & ".doc" & "\" & Me.cartaSel.Column(1) & "-" & Nz(Replace(Me.NºORDEM, " ", "")) & "-" & Format(Now, "hhmmss") & ".doc"


    Atentamente
    JM
    avatar
    JPaulo
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 9697
    Registrado : 04/11/2009

    Re: [Resolvido]Dados do Formulário Gerar no Word e Gravar em Diretorio

    Mensagem  JPaulo em Sex 09 Jun 2017, 17:12

    Você estragou as instruções;

    Veja o simples:

    Código:
    wdApl.Documents.Open FileName:="G:\GestaoProcessosVistosConsulares\Aplicacao\BD\DocWordTemplate" & "\" & Me.cartaSel.Column(2)

    Código:
    strlocal = "G:\GestaoProcessosVistosConsulares\Aplicacao\BD\DocWordTemplate" & "\" & Me.cartaSel.Column(1) & "-" & Nz(Replace(Me.NºORDEM, " ", "")) & "-" & Format(Now, "hhmmss") & ".doc"


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver este link.]

    Sucesso e Bons Estudos
    Success and Good Studies

    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]
    [Você precisa estar registrado e conectado para ver esta imagem.] [Você precisa estar registrado e conectado para ver este link.]

    Maçom
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 42
    Registrado : 06/02/2010

    Re: [Resolvido]Dados do Formulário Gerar no Word e Gravar em Diretorio

    Mensagem  Maçom em Sab 10 Jun 2017, 19:54

    Olá JPaulo,

    Este é erro de palmatória...estava a fazer muita coisa ao mesmo tempo, e já estava baralhado com erro repetido


    muito obrigado e desculpe o tempo que lhe ocupei.

    JM




      Data/hora atual: Sab 18 Nov 2017, 08:03