Notifications
Clear all

Formula Matricial atraso no desempenho

10 Posts
3 Usuários
0 Reactions
1,658 Visualizações
willianrc
(@willianrc)
Posts: 0
Trusted Member
Topic starter
 

Olá galerinha, alguém conhece alguma formula case-sensitive? porque a que eu uso esta atrasando muito o desempenho da planilha, e eu uso uma grande quantidade de dados.

Segue anexo......

 
Postado : 31/03/2018 1:42 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

.
willianrc, achei sua pergunta neste tópico muito parecida com a deste: .... viewtopic.php?f=20&t=27828
.
Não seria o caso de só adaptar com a solução do outro??
.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 31/03/2018 11:37 am
willianrc
(@willianrc)
Posts: 0
Trusted Member
Topic starter
 

JSCOPA, sim parece, mas como srobles apresentou a macro o que foi super válido e rápido também, apesar de apresentar uma gama muito grande de dados e o resultado mais organizado, tentei adaptar essa matriz que ocasionou um delay. Já com sua resolução espetacular e sábia no tópico citado, eu não soube organizar o resultado muito bem igual a planilha postada. Por isso criei novo tópico para averiguar se há um outro jeito de colocar uma formula case-sensitive.

 
Postado : 31/03/2018 11:56 am
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Se puder ser por código, uma ideia seria usar um Dictionary:

Sub ÚnicosCaseSensitive()
  Dim cel As Range, rg As Range
  Set rg = Planilha1.Range("A2", Planilha1.Cells(Rows.Count, "A").End(xlUp))
  With CreateObject("Scripting.Dictionary")
    For Each cel In rg
      If Not .exists(cel.Value2) Then .Add cel.Value2, ""
    Next cel
    Set rg = Planilha1.Range("E2", Planilha1.Cells(2 + .Count - 1, "E"))
    rg.Value2 = Application.Transpose(.Keys)
    Planilha1.Cells(1, 7).Value2 = .Count
  End With
  Set cel = Nothing: Set rg = Nothing
End Sub

Obs.: lista direto, sem classificar antes. Se for necessário, pode acrescentar o código para classificar antes ou depois de filtrar.

 
Postado : 31/03/2018 9:34 pm
willianrc
(@willianrc)
Posts: 0
Trusted Member
Topic starter
 

EdsonBR , tentei colocar seu código e não obtive sucesso, help me please?

 
Postado : 01/04/2018 5:34 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

.
Willian
Insira um novo módulo e cole o código do Edson nele
Vá na Aba Desenvolvedor e insira um novo botão, e vincule ele ao código que vc colou no módulo 2
Agora é só clicar no botão acima para filtrar os dados na coluna E
.
Veja ...

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 01/04/2018 5:59 am
willianrc
(@willianrc)
Posts: 0
Trusted Member
Topic starter
 

JSCOPA, desculpa , acho que não fui claro em meu tópico, peço perdão. Inicialmente quero alterar a forma de contagem dos registros colados [veja na primeira planilha que postei] , eu uso uma formula matricial case-sensitive (na coluna H2:H2373) para fazer a contagem dos valores, é essa formula que esta fazendo o desempenho da planilha cair. Minha questão é alterar essa formula por uma mais rápida ou por uma macro.Se voce baixar a primeira planilha que eu postei e colar mil códigos você vai ficar quase 1 hr esperando a planilha fazer a contagem dos valores.
Repito: gostaria de alterar a formula matricial por uma outra mais rápida ou por uma macro que faz contagem de cada valor e cole na coluna H

 
Postado : 01/04/2018 6:57 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

.
Veja se é isto ...
.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 01/04/2018 7:10 am
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

...Inicialmente quero alterar a forma de contagem dos registros colados [veja na primeira planilha que postei] , eu uso uma formula matricial case-sensitive (na coluna H2:H2373) para fazer a contagem dos valores, é essa formula que esta fazendo o desempenho da planilha cair. Minha questão é alterar essa formula por uma mais rápida ou por uma macro.... Repito: gostaria de alterar a formula matricial por uma outra mais rápida ou por uma macro que faz contagem de cada valor...

EdsonBR , tentei colocar seu código e não obtive sucesso, help me please?

Ah, sim, então vc não quer só a listagem dos valores únicos (case sensitive) mas também a contagem deles. Ok. Se for isso, veja as alterações na macro no anexo.

 
Postado : 02/04/2018 5:33 pm
willianrc
(@willianrc)
Posts: 0
Trusted Member
Topic starter
 

Brilhante ! Me surpreendeu muito, que desempenho é esse? Deixo aqui meus sinceros agradecimentos a todos que me ajudaram.

 
Postado : 02/04/2018 8:04 pm