MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    avatar
    flecha
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 304
    Registrado : 11/01/2012

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  flecha 2/10/2014, 18:48

    Olá,
    O ano passado sanei uma dúvida sobre o assunto e foi resolvido, só que com o uso está acontecendo o seguinte:

    Tenho o doc Word com os campos de textos para mesclar e mais duas fotos que o Bookmark ficou como image1 e image2.

    Acontece que as vezes o usuário não coloca a foto e quando vai preencher o Doc ele para nas fotos que não tem o caminho no BD e assim não completa a rotina, bloqueando o Modelo Doc com todos os campos preenchidos mas parado pela falta de foto.

    Como faço para testar antes do preenchimento, se existe foto no bd, ou caminho no form que existe a s fotos ou ignorar a falta de foto para colocar no Doc, ou abortar toda operação?

    Uso essa forma que só dá certo se tiver as fotos salvas em uma pasta informada pelo caminho no form .

    Código:
    'Primeira foto no Doc+++++++++++++++++++++++++++++++++++++++++++++++

    MiWord.ActiveDocument.Bookmarks("image1").Select
    MiWord.selection.InlineShapes.AddPicture FileName:="" & Forms!frmgeralguia!SubDadosBaseGuia.Form!LocalFoto & "", LinkToFile:=False, SaveWithDocument:=True


    ' Segunda foto *****************************************************
    MiWord.ActiveDocument.Bookmarks("image2").Select
    MiWord.selection.InlineShapes.AddPicture FileName:="" & Forms!frmgeralguia!SubDadosBaseGuia.Form!localFoto2 & "", LinkToFile:=False, SaveWithDocument:=True

    ' Salva no Path do MDB C:|Recofoto

    Call MiDoc.SaveAs(CurrentProject.Path & "\POSITIVA_" & Forms!frmgeralguia!SubEntrevistadoGuia.Form!NumEntrevistado & ".doc")

    Obrigado.
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty Re: [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  Dilson 5/10/2014, 21:13

    Uma ideia seria fazer testes se os campos fotos estão preenchidos. Ex:

    'Verifico se ambos os campos fotos estão vazios
    if isnull(foto1) and isnull(foto2) then
    'Então
    Manda para o word sem processar as instruções para fotos

    else
    'Senão
    Manda para o word processando o código completo

    end if



    avatar
    flecha
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 304
    Registrado : 11/01/2012

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty Re: [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  flecha 6/10/2014, 13:57

    Dilson,
    Com IF ISNULL ou IF NOT ISNULL não consegui ai coloquei verificando se os campos do caminho estavam com conteúdo ai funcionou:

    Código:

    If (Forms!frmgeralguia!SubDadosBaseGuia.Form!LocalFoto) <> "" And (Forms!frmgeralguia!SubDadosBaseGuia.Form!localFoto2) <> "" Then


    Agora se tiver conteúdo ele faz completo executa o IF, salvando com as fotos e se for vazio ele pula para o ELSE e salva uma nova copia sem as fotos, mantendo o .DOC modelo intacto.

    Só tem um porém na cópia salva com os dados e sem as fotos ele coloca o campo image1 e image2 onde entrariam a mesclagem com as fotos usando uma folha sem ter foto.

    Será que daria para eliminar isso?

    Obrigado
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty Re: [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  Dilson 7/10/2014, 13:32

    Uma saída é fazer dois docs. Um contendo os quadros e outro não. Dentro de cada rota do código você chama os docs correspondentes, ex:

    if tem conteúdo then

    Call MiDoc.SaveAs(ComFoto.doc)

    else

    Call MiDoc.SaveAs(SemFoto.doc)

    end if
    avatar
    flecha
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 304
    Registrado : 11/01/2012

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty Re: [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  flecha 7/10/2014, 15:14

    Dilson,

    Isso mesmo, agora como eu tenho uma visão "espacial" do código a última instrução é a de mesclar as fotos, então antes disso ele já
    abriu o doc (modelo) lá no início e mesclou praticamente todos os textos do form com o word.

    Aqui eu inicio o procedimento:

    Dim NovoCaminho As String
    Dim MiWord
    Dim MiDoc
    Dim Cambio
    Dim strAppPath As String
    strAppPath = Application.CurrentProject.Path
    Set MiWord = CreateObject("Word.Application")
    Set MiDoc = MiWord.Application.Documents.Open(CurrentProject.Path & "\Positivo.doc")
    Set Cambio = MiWord.ActiveWindow.selection.Find
    NovoCaminho = "C:\Word"

    Aqui começa a mesclagem em si:

    Set MiDoc = é que abre o doc (modelo), eu posso colocar esse IF logo após os Sets acima?
    criando um outro modelo sem foto e dentro do If  abro o modelo com foto ou Else  abro o sem foto.

    Ou também posso fazer como Função em módulo separado as mesclagens
    uma para com foto e outra sem foto e chama-las conforme o If do Set?

    Obrigado


    Última edição por flecha em 7/10/2014, 15:20, editado 1 vez(es) (Motivo da edição : Completando a pergunta.)
    Dilson
    Dilson
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1743
    Registrado : 11/11/2009

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty Re: [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  Dilson 7/10/2014, 20:12

    Exato.

    Set ...
    if tem conteudo then
    Set MiDoc = MiWord.Application.Documents.Open(CurrentProject.Path & "\PositivoComFoto.doc")
    else
    Set MiDoc = MiWord.Application.Documents.Open(CurrentProject.Path & "\PositivoSemFoto.doc")
    end if
    Set ...
    avatar
    flecha
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 304
    Registrado : 11/01/2012

    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty Re: [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  flecha 7/10/2014, 23:46

    Valeu,
    Se não fosse esse forum eu estava frito.

    obrigado.

    Conteúdo patrocinado


    [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto Empty Re: [Resolvido]Mesclagem de foto access para Word (quando o campo do BD não tem foto

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/3/2024, 07:19