24.08.2020 Views

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

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

364 Parte VI: A Parte dos Dez

Como eu posso evitar que outros vejam o meu código VBA?

1. Ative o seu projeto no VBE e escolha Ferramentas➪xxxxx Propriedades.

2. Na caixa de diálogo que aparece, clique na guia Proteção e

selecione Bloquear Projeto para Exibição.

3. Entre com uma senha (duas vezes) e clique OK.

4. Salve a sua pasta de trabalho.

Fazer isso evita que usuários casuais vejam o seu código, mas com

certeza, a proteção de senha não é 100% segura. Existem utilitários de

quebra de senha.

Qual é o código VBA para aumentar ou diminuir o número de linhas

e colunas em uma planilha?

Não existe tal código. O número de linhas e colunas é fixo e não pode

ser mudado. No entanto, se você abrir uma pasta de trabalho que tenha

sido criada usando uma versão anterior do Excel (antes do Excel 2007),

o texto Modo de Compatibilidade aparece na barra de título. Essa

informação indica que essa pasta de trabalho é limitada à antiga grade

de 256-x-65536 células. Você pode se livrar dessas limitações, salvando

o arquivo como uma pasta de trabalho normal (XLSX ou XLSM) e

depois, fechando e reabrindo esse novo arquivo.

Quando faço referência a uma planilha em meu código VBA, recebo

um erro “subscrito fora do intervalo”. Eu não estou usando quaisquer

subscrições. O que há?

Esse erro acontece se você tentar acessar um elemento em uma

coleção que não existe. Por exemplo, esta declaração gera o erro se a

pasta de trabalho ativa não contiver uma planilha chamada MySheet:

Set X = ActiveWorkbook.Sheets(“MySheet”)

No seu caso, a pasta de trabalho que você pensa que está aberta,

provavelmente não está (assim, não está na coleção Workbooks). Ou,

talvez você tenha digitado errado o nome da pasta de trabalho.

Existe um comando VBA que seleciona uma faixa da célula ativa até a

última entrada em uma coluna ou uma linha? (Em outras palavras,

como uma macro pode conseguir o mesmo que Ctrl+Shift+↓ ou

Ctrl+Shift+→?)

Eis o equivalente VBA a Ctrl+Shift+↓:

Range(ActiveCell, ActiveCell.End(xlDown)).Select

Para outras direções, use as constantes xlToLeft, xlToRight ou xlUp ao

invés de xlDown.

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

Saved successfully!

Ooh no, something went wrong!