Esta é o layout para leitura e impressão, para retornar à versão normal do site clique no link a seguir:http://qaprender.blogspot.com/

Mostrando postagens com marcador Word. Mostrar todas as postagens
Mostrando postagens com marcador Word. Mostrar todas as postagens

quinta-feira, 24 de janeiro de 2008

Mala Direta com Word e Access

Como fazer para recuperar os dados Access de um cliente, alunos, funcionários, etc. e editar esses dados dentro de documento previamente elaborado, por exemplo um contrato? Veja como fazer nesse passo-a-passo.


Muitas vezes o usuário precisa elaborar um contrato para um cliente qualquer cujo cadastro tenha sido feito em tabelas Access. Nesse artigo mostraremos no passo-a-passo, como o Word, interagindo com o Access, recupera os dados do cliente e os insere num contrato padrão. Para esses exemplos usamos o Office 2003. Esse procedimento irá exigir um conhecimento mínimo de Word do usuário.


1° Passo: Cadastrando o cliente

Ilustração 1 - Exemplo obtido do banco de dados NorthWind do Access.


2° Passo: O contrato ou o documento que receberá os dados da tabela Access


Ilustração 2 O contrato modelo que será usado na mala direta.





3° Passo: No Word ative as barras de ferramentas necessárias para a mala direta:

Ilustração 3 - Ativando a barra de ferramentas "Mala Direta" do Word


4° Passo: Abrindo a fonte de dados:

Ilustração 4 Clique no botão "Abrir fonte de dados"

Ilustração 5 Selecione o base de dados. No nosso exemplo "Maladireta.Mdb"





5° Passo: Inserindo campos de mesclagem:
Clique antes no texto do Word exatamente no local da inserção do campo. Repita esta operação para todos os campos a serem inseridos.


Ilustração 6 - Inserindo campos da tabela Cliente no contrato padrão.

*Obs.: Apenas se tiver algum problema na hora de mesclar a data (como o mês vindo antes do dia, por exemplo) faça o seguinte: n
a referência ao campo do Access mude o formato da data. Ex.: data_inicio \"DD/MM/YY".

Todos os campos de mesclagem foram inseridos:


6° Passo: Exibindo os dados mesclados:
Repare que foram mesclados todos os clientes da tabela. A paginação pode ser obtida nos botões de navegação (idênticos aos do Access – veja na barra de ferramentas Mala Direta).

Ilustração 7 - O contrato padrão já com os dados editados.

7° Passo: Colocando cliente como foco:
Até aqui conseguimos mesclar em contrato todos os clientes da tabela. Mas vamos supor que você queira o contrato somente para o cliente em foco na tela do Access: prepare uma consulta
criação de tabela cujo critério seja o código do cliente atual e volte ao 4° passo. Veja o exemplo:

Ilustração 8 - Preparando uma consulta do tipo "Criação de tabelas" no Access. Esta tabela irá conter somente um registro.

A partir do contrato padrão, mesclar com os dados da tabela (ou da consulta) e salvar um novo arquivo do Word (doc).

Ilustração 9 - A mesclagem para um novo documento permite que o novo contrato seja tratado e salvo isoladamente, permanecendo o contrato padrão pronto para novos contratos.


Ilustração 10 Está aí o contrato mesclado e pronto para ser salvo com um novo nome (ex.: código do cliente_contrato - use a opção Salvar do Word), impresso, assinado e arquivado na pasta do cliente.



8° Passo: Comandos:

Todos esses passos serão executados uma única vez e não precisarão mais ser repetidos. A partir de agora criaremos um botão de comando na tela do cliente que irá automatizar boa parte do processo:


Veja o código no comando “Contrato”:

Private Sub Contrato_Click()
On Error GoTo Err_Contrato_Click
DoCmd.SetWarnings False
Dim stDocName As String
stDocName = "qryCliente_Atual"
DoCmd.OpenQuery stDocName, acNormal, acEdit
DoCmd.SetWarnings True
Dim stAppNameDOC As String
stAppNameDOC = "WinWord.exe" & " " & "C:\MalaDireta\ContratoPadrao.doc"
Call Shell(stAppNameDOC, 1)
Exit_Contrato_Click:
Exit Sub
Err_Contrato_Click:
MsgBox Err.Description
Resume Exit_Contrato_Click
End Sub




A dica: Não use espaços e nem caracteres especiais para nome de pastas e arquivos. Ex. C:\Mala
Direta\Contrato Padrão.doc. Apesar do Word aceitar esses formatos, na automação o mesmo não abre o arquivo com espaços no nome e caracteres especiais. Ao invés disso use: C:\MalaDireta\ContratoPadrao.doc.


Conclusões:
Concordo que é um pouco trabalhoso, exige algum conhecimento de Word e de Access, mas o resultado compensa porque, como citado no começo: imagine elaborar 600 contratos escolares no início da temporada, ou mesmo a todo momento cadastrar e contratar um novo cliente.
Na barra de ferramentas “Mala Direta” do Word existem ainda inúmeras facilidades a serem exploradas de acordo com a sua necessidade.
No Access é possível também mandar um formulário do tipo “folha de dados”, inteiro para
dentro do Word (com o recurso copiar e colar), também um campo moeda escrito por extenso, enfim, também na interação Access/Word querer é poder.


Fonte: http://www.ativoaccess.com.br/

quarta-feira, 19 de setembro de 2007

Envie mala-direta por e-mail com o Word 2003

Como personalizar e-mails para grupos usando o Word 2003

Até a versão 2000, o Word trazia recursos de mala direta apenas para documentos impressos. No Word XP e 2003, documentos personalizados também podem ser enviados por e-mail. Vou mostrar aqui os procedimentos para criar esta mala direta por e-mail, que é o novo recurso. A criação de Mala direta impressa não é muito diferente, portanto, basta mudar alguns poucos procedimentos. Para criar e enviar uma mala direta de e-mails no Word, você vai precisar do Outlook totalmente configurado como programa-padrão de e-mails. Feito isto, dê os seguintes passos:

1. Tenha à mão um documento com o nome e o endereço eletrônico do destinatário. Esse documento pode ser, por exemplo, um banco de dados Access ou um simples documento do Word. Para fazer um teste rápido, crie um documento do Word e inclua nele uma tabela com os campos Nome, E-mail e Empresa. Preencha alguns registros.

2. Abra o Word e escreva normalmente o texto da mensagem de e-mail.

3. Acione Ferramentas/Cartas e Correspondências/Assistente de Mala Direta. Surge, à direita da tela, o painel de tarefas Mala Direta.

4. Nesse painel, escolha a opção E-mails como tipo de documento. Embaixo, clique no link "Próxima: Documento Inicial" e toque em frente para a próxima etapa.

5. Agora, como você já escreveu a mensagem, escolha Usar o Documento Atual e clique no link "Próxima: Selecione os Destinatários".

6. Selecione a opção Usar uma Lista Existente. Clique no comando Procurar e indique o documento com a lista de destinatários. Avance para o próximo passo.

7. Se quiser personalizar a mensagem (por exemplo, colocando no alto do texto o nome da pessoa e a empresa), posicione o cursor no local desejado e acione o comando Bloco de Endereço.

8. Na caixa Inserir Bloco de Endereço, indique os itens de endereço - nome, empresa etc. - que você deseja incluir no e-mail. Depois, clique no link "Próxima: Visualize as Cartas".

9. Agora você tem uma amostra de como ficará a mensagem. Se algo não estiver a contento, clique no link "Anterior" e volte para fazer as alterações necessárias. Se tudo estiver bem, clique em "Próxima: Conclua a Mensagem".

10. Clique no comando E-mail. O Word abre a caixa Mesclagem para E-mail. Nela, escreva o assunto de sua mensagem. Atenção, antes de acionar OK, não se esqueça de escolher, na caixa Formato de Mensagem, a opção Texto sem Formatação. Se você usar HTML, que é a opção-padrão, o comando não vai funcionar.

Pronto, as mensagens foram enviadas. Naturalmente, você pode ainda incluir outros campos de variáveis, desde que eles estejam disponíveis no documento de origem dos dados.

Você também pode incluir em sua mensagem campos calculados com base em informações do banco de dados. Se, por exemplo, o banco de dados tiver um campo Sexo, preenchido com M ou F, você pode tratar os destinatários e destinatárias de forma adequada, sem aquele manjado e preguiçoso "Prezado(a) Senhor(a)". Para fazer isso, você precisa criar manualmente um campo de dados especial. Siga os passos:

1. Acione Ctrl+F9 para inserir no texto os delimitadores de campo - caracteres especiais que lembram um par de colchetes: { }.

2. Com o cursor entre os colchetes, escreva IF, espaço. Em seguida, dê outra vez o comando Ctrl+F9 para introduzir novo campo.

3. Entre os novos colchetes, digite: MERGEFIELD Sexo. Mergefield (campo de mesclagem) indica que Sexo é um campo existente na origem de dados.

4. Agora, fora dos colchetes internos, escreva:

= "M" "Prezado Senhor," "Prezada Senhora"

No final, você fica com algo assim:

{IF {MERGEFIELD Sexo}= "M" "Prezado Senhor," "Prezada Senhora,"}

O comando IF estabelece uma condição: se Sexo for M, use o tratamento no masculino. Caso contrário, use o feminino. Acione a tecla F9 para atualizar o campo. Você também pode criar campos de mesclagem mais complexos, usando cálculos aritméticos, combinações de campos do banco de dados e outros recursos de mala direta...

Mala direta é bom, mas como nas propagandas de cerveja, "aprecie com moderação". Por favor, não vamos ficar lotando as caixas postais de nossos amigos com informações inúteis.

Marcadores

Recent Comments