🎯 Saiba o que estudar

Avançado com Treinador a partir de R$ 0,76/dia

Em VBA para Microsoft Excel, a linha de código que provoca a...

Próximas questões
Com base no mesmo assunto
Q4196128 Programação
Em VBA para Microsoft Excel, a linha de código que provoca a exclusão da linha onde fica a célula selecionada é: 
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: B

Fundamento decisivo: O ponto decisivo era identificar, no VBA do Excel, a sintaxe que exclui a linha inteira associada à seleção. Entre as opções, só Selection.EntireRow.Delete atende a esse critério, o que conduz ao gabarito B.

Tema central: Sintaxe VBA de linha
Análise das alternativas
A
Errada
Está errada porque Selection.Delete atua sobre a própria seleção. Isso não expressa necessariamente a exclusão da linha inteira onde está a célula selecionada; o efeito pode ser apenas remover ou deslocar a área selecionada.
B
Certa
A alternativa B está certa porque Selection.EntireRow.Delete é a sintaxe que referencia a linha inteira da seleção e executa sua exclusão.
C
Errada
Está errada porque Selection.Row, nesse contexto, não representa a linha inteira como objeto deletável; ele retorna o número da linha. Por isso, o encadeamento .Row.Delete não corresponde ao uso correto para excluir a linha inteira.
D
Errada
Está errada porque CurrentRow não é membro padrão válido de Selection no VBA do Excel para esse propósito. O problema aqui é de sintaxe e de modelo de objetos.
E
Errada
Está errada porque ThisRow não é membro válido de Selection no VBA do Excel. É um nome intuitivo, mas inexistente nesse contexto.
Pegadinha da questão
A confusão real era trocar excluir a seleção por excluir a linha inteira e, além disso, aceitar nomes que parecem plausíveis no VBA, mas não existem no modelo de objetos, como CurrentRow e ThisRow.
Dica para questões semelhantes
  • Quando o comando pedido for sobre a linha inteira no Excel VBA, verifique se a sintaxe referencia explicitamente EntireRow antes de Delete.
  • Não trate Row como objeto de linha inteira: no contexto indicado, ele serve para identificar o número da linha, não para encadear exclusão.
  • Desconfie de propriedades com nome intuitivo se elas não pertencem ao modelo de objetos do Excel VBA; validade sintática também decide a questão.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo