Ir ao conteúdo
  • Cadastre-se

Excel Não consigo utilizar um intervalo selecionado(VBA)


Ir à solução Resolvido por Visitante,

Posts recomendados

Estou com dificuldades em consegui manipular um intervalo de células no Excel. No caso gostaria de fazer macros genéricas pegando exatamente o intervalo ja pré selecionado pelo usuário e utilizar em métodos como Range("intervalo , A2:A5") ou ate mesmo em CONT.SE(contador;A1), onde essas variáveis não fossem setadas é sim selecionadas, gostaria de não usar nenhuma célula de parâmetro, por isso offsete e as demais dessa família de comandos não me surtiram efeito. Outro método que tentei utilizar "ferozmente" foi CurrentRegion porém o vba não aceitou de jeito nenhum esse comando no meio do método Range ou CONT.SE, tentei também armazenar o intervalo em uma variável com Input, mesmo assim as funções não aceitaram uma variável para comparar. 

 

Gostaria de uma luz. Agradeço pela atenção.

Link para o comentário
Compartilhar em outros sites

Sub Testes()
 With Selection
  MsgBox .Cells(1, 1).Address(0, 0) 'retorna o endereço da célula do canto superior esquerdo da seleção
  MsgBox .Cells.Count 'retorna a quantidade de células selecionadas
  MsgBox Application.Sum(.Value) 'retorna a soma dos conteúdos das células selecionadas
 End With
End Sub

 

Link para o comentário
Compartilhar em outros sites

Osvaldo

 

Obrigado ela atenção mais infelizmente não me ajudou muito... nenhuma dessas funções me ajuda, pois elas tem células setadas, conta células e soma de células. Quero uma especifica que identifique o intervalo que esta selecionado pelo usuário e depois consiga utilizar nos métodos. No caso já tentei criar uma variável do tipo Range e atribuir um intervalo, porém quando tento utilizar no CONT.SE() ele pede um argumento valido, teoricamente ignorando a variável ser do tipo range.

Link para o comentário
Compartilhar em outros sites

Eu postei comandos genéricos pois a sua questão é genérica e o seu segundo post também é genérico.

 

Forneça exemplos reais e informe com exatidão o resultado desejado, disponibilize uma planilha com exemplos e com os resultados desejados, se não, a sua demanda fica jogo de adivinhação.

Link para o comentário
Compartilhar em outros sites

Obrigado Osvaldo deu certo de mais aqui... Procurei sozinho bastante uma solução mais não tive êxito.

 

Ainda não testei mas quando usar ele em uma função CON.SE("$Q$44:$R$44";$S$44) tem como usar o comando Select também para substituir ou terei que usar outra variável... por que no caso quero fazer uma macro que substitua todos os primeiros argumentos que no caso é $Q$44:$R$44 pela área que usuário selecionou,  EX: CON.SE(Selection;$S$44) +CON.SE(Selection;$S$45)+CON.SE(Selection;$S$46)+CON.SE(Selection;$S$47).

 

Obrigado pela ajuda desde já e pela atenção.

 

 

Link para o comentário
Compartilhar em outros sites

 

 EX: CON.SE(Selection;$S$44) +CON.SE(Selection;$S$45)+CON.SE(Selection;$S$46)+CON.SE(Selection;$S$47).

 

 

Não conheço a função CON.SE() 😕

Pode ser a CONT.SE() ?

MsgBox Application.CountIf(Selection, [S44]) + Application.CountIf(Selection, [S45])+ ...

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...