Ir ao conteúdo
  • Cadastre-se
FlaviusAtila

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

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.

Compartilhar este post


Link para o post
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

 

Compartilhar este post


Link para o post
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.

Compartilhar este post


Link para o post
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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Está é a macro que quero fazer,  a parte em vermelho é exatamente o que quero substituir pela seleção do usuário, só um intervalo onde ele possa selecionar.

 

Segue imagem

Problema.png

Compartilhar este post


Link para o post
Compartilhar em outros sites
Union(Range("R33:AD33"), Selection).Select

ou

Union([R33:AD33], Selection).Select

 

  • Curtir 1

Compartilhar este post


Link para o post
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.

 

 

Compartilhar este post


Link para o post
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])+ ...

 

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado Osvaldo deu certinho... Obrigado mesmo... Sucesso.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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 publicações 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...

GRÁTIS: minicurso “Como ganhar dinheiro montando computadores”

Gabriel TorresGabriel Torres, fundador e editor executivo do Clube do Hardware, acaba de lançar um minicurso totalmente gratuito: "Como ganhar dinheiro montando computadores".

Você aprenderá sobre o quanto pode ganhar, como cobrar, como lidar com a concorrência, como se tornar um profissional altamente qualificado e muito mais!

Inscreva-se agora!