24.08.2020 Views

Programando o Excel ® Vba Para Leigos - 2ª Ed 2013 NoDRM (1)

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

250 Parte IV: Como se Comunicar com Seus Usuários

Exibindo as Caixas de Diálogo

Integradas do Excel

Uma maneira de ver um VBA é que ele é uma ferramente que permite

imitar os comandos do Excel. Por exemplo, veja esta declaração VBA:

Range(“A1:A12”).Name = “MonthNames”

Executar essa declaração VBA tem o mesmo efeito que escolher

FórmulasðNomes DefinidosðDefinir Nome para exibir a caixa de

diálogo Novo Nome, e depois, digitar MonthNames na caixa Nome e

A1:A12 na caixa Refere-se a clicar OK.

Quando você executa a declaração VBA, a caixa de diálogo Novo Nome

não aparece. Quase sempre é isso que você quer que aconteça: você

não quer caixas de diálogo passando na tela enquanto a sua macro

executa.

No entanto, em alguns casos você pode querer que o seu código exiba

uma das caixas de diálogo integradas do Excel e permita ao usuário

fazer escolhas. Isso pode ser feito usando VBA para executar um

comando da faixa de opções. Eis um exemplo que exibe a caixa de

diálogo Novo Nome (veja a Figura 15-9).

Application.CommandBars.ExecuteMso (“NameDefine”)

Figura 15-9:

Exibindo

uma das

caixas de

diálogo do

Excel

usando VBA.

LEMBRE-SE

O seu código VBA não pode obter quaisquer informações da caixa de

diálogo. Por exemplo, se você executar o código para exibir a caixa de

diálogo Novo Nome, o seu código não pode obter o nome fornecido

pelo usuário, ou a faixa em que ele foi nomeado.

O ExecuteMso é um método do objeto CommandBars e aceita um

argumento, um parâmetro idMso, que representa um controle da faixa

de opções. Infelizmente, esses parâmetros não estão relacionados no

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!