Formulário de usuário no Outlook não responder (pode não fechar, clique no botão evento não dispara)

StackOverflow https://stackoverflow.com/questions/886106

Pergunta

Eu criei um formulário de usuário simples na minha macro Outlook VBA - Eu posso fazer a forma visível usando este código:

VBA.UserForms.Add (PasswordForm.Name)
PasswordForm.Show (Modal)

... eo UserForm_Initialize() Evento de fato fogo. Mas ao clicar no botão "Enviar" no formulário não faz nada - o evento SubmitButton_Click() (que foi auto-criado por um duplo clique sobre o botão no designer) Nunca incêndios. Além disso, o formulário de usuário tem o costume pouco X vermelho no canto superior direito da janela, mas ao clicar este não faz nada (a forma não fechar ou saída).

Qualquer idéia do que eu poderia estar fazendo errado? Eu sou muito novo para VBA.

Foi útil?

Solução 2

OK, resolvido: eu mudei:

PasswordForm.Show (Modal)

para

PasswordForm.Show

e agora funciona, embora eu vou ter que mudar a maneira como ele funciona um pouco para acomodar o fato de que o formulário não será modal mais (eu suponho que é a melhor solução de qualquer maneira, modais pode ser irritante para o utilizador, é só eu tenho que verificar que o formulário, etc agora).

Obrigado a todos por suas sugestões.

Outras dicas

Às vezes controles em VBA se dissociado de seus eventos. Pode ser porque você renomeou o controle ou porque você renomeado acidentalmente o procedimento de evento (embora raramente pode acontecer por outras razões). Além disso, ff você esqueceu de "compilação" antes de executar o formulário, você pode ter um erro no formulário que está causando o problema.

A maneira mais fácil de dupla verificação é abrir o formulário no modo de design, selecione o botão em questão e pressione F7. Se um novo processo é criado, copiar um colar seu código em seguida, basta copiar / colar o código antigo para ele, e se livrar do velho.

Depois de ter feito isso, vá ao menu "Debug" e clique em "compilação". Se forem detectados erros, corrigi-los um clique "Compilar" novamente. Repita até que ele compila sem reclamar. Em seguida, tente executar o formulário novamente.

No Office 03/07, se você quer ter certeza de que mostra, definir o comportamento .ShowModal do formulário modal para "True". Eu tive problemas com a tentativa de tornar o formulário modal durante o evento show.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top