• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

DreamPearl

Localizar e substituir no Excel através do VBA Access

7 mensagens neste tópico

Bom dia!

Tenho o seguinte código que através do formulario em Access(2000) localiza e substitui numa folha de Excel:

Dim WApp As Object

Set WApp = CreateObject("Excel.Application")

WApp.Workbooks.Open (Parametrizacao.CaminhoTemplates & Texto4)

WApp.Visible = True

       

       

        With WApp

        .Cells.Replace What:="[Cliente]", Replacement:=Forms![imprime].Nome, LookAt:=xlPart, _

        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _

        ReplaceFormat:=False

         

        .Cells.Replace What:="[Contacto]", Replacement:=Forms![imprime].Contacto, LookAt:=xlPart, _

        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _

        ReplaceFormat:=False

(...)

agora o meu problema é k se nao estao alguns desses campos nas folhas de Excel ele  da sempre akelas mensagens de erro a dizer que nao encontrou...bla,bla... O cliente pode fazer outras folhas de Excel e precisar desses campos por isso nao apago...

Alguem po me ajudar?? Nem k seja alguma maneira de por um if....tiver substitui else...passa à frente...

:)

Obrigada! :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Não entendi tudo! Esse código está a funciona certo ? Embora não tenhas mostrado tudo o que queres é substituir apenas numa folha especifica ? E essa folha tem o mesmo nome ou queres procurar em todas ?

PS: Atenção que isto não é um telemóvel ... escreve correctamente :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Bom dia!

Esse codigo funciona correctamente. Atraves de uma listbox sao me dadas todas as folhas k estao numa pasta de templates... clico numa e escolho ...o k ele faz é abrir esse modelo, substituir com a informação k esta seleccionada num form de access e gravar com outro nome na pasta do processo... e faz isto tudo! só  que esses modelos mudam e nem sempre  têm os mesmos campos... A minha questao é ,por exemplo, abrir um template "teste" que nao tem o campo "Assunto" antes de substituir e gravar vai dar mensagem de erro a dizer que o Excel nao encontrou o campo....bla...bla... e isso é aborrecido pa o utilizador....imagina k faltas mais campos?quantas mensagens nao vao aparecer... :(

Espero ter-me expressado bem  :)

Obrigada :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa lá!

Agora é que vi a última frase da tua resposta.

:-[

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Desculpa lá!

Agora é que vi a última frase da tua resposta.

:-[

Já ia "cascar" :)

Tudo bem :D

Experimenta desactivar os avisos ao utilizador. Mais ou menos:

.DisplayAlerts = False
   ' o teu código
.DisplayAlerts = True

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito obrigada!! :biggrin:

Funcionou perfeitamente!

PS: Nunca mais escrevo com abreviaturas... :D

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Muito obrigada!! :biggrin:

Funcionou perfeitamente!

PS: Nunca mais escrevo com abreviaturas... :D

Ainda bem :)

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora