Página 1 de 1

Procedimento Muito Lento no Form [Resolvido]

Enviado: Ter Nov 06, 2018 12:50 pm
por pedrobb
Pessoal,
Uso a função abaixo para Classificar Setores Exclusivos e em Ordem Alfabética (coluna F da Planilha11).
Funciona mas é muito lento.
No frmEmpresas clique no Botão de Opção Setor.
Será que pode ser mais rápido?

Código: Selecionar todos

Private Sub SetorCombobox2()
SpeedUp
Dim Z As Integer
Dim iforsta, isista As Integer
Dim i, j As Integer
Dim stemp As String

ultimaLin = Planilha11.Cells(Rows.Count, "F").End(xlUp).Row
For Z = 2 To ultimaLin
    ComboBox2 = Planilha11.Range("F" & Z)
    If ComboBox2.ListIndex = -1 Then ComboBox2.AddItem Planilha11.Range("F" & Z)
Next Z

iforsta = 0
isista = ComboBox2.ListCount - 1

For i = iforsta To isista - 1
For j = i + 1 To isista
If ComboBox2.List(i) > ComboBox2.List(j) Then
stemp = ComboBox2.List(j)
ComboBox2.List(j) = ComboBox2.List(i)
ComboBox2.List(i) = stemp
End If
Next j
Next i
ResetConfig
End Sub

Re: Procedimento Muito Lento no Form

Enviado: Qua Nov 07, 2018 9:11 am
por LaerteB
Bom dia, Pedrobb.

Não entendi o que quis dizer com "muito lento", pois testei aqui clicando o option button "setor"
e apareceu os dados no listview em até 5 segundos... mas se quer reduzir mais, vamos esperar se
alguém possa ter uma outra solução...

Verifique se está com muitos arquivos abertos do Excel e de outros programas, caso estejam feche-os
e veja se isso reduz o tempo...

OBS: Quando se tem formulas grandes ou complexas é normal a planilha ficar cada vez mais lenta, conforme
aumenta os dados e tiver mais linhas... uma forma de reduzir o tempo seria tirar o máximo de formulas da planilha
e fazer códigos no formulário que as possa substitui-las..

;)

LaerteB :D

Re: Procedimento Muito Lento no Form

Enviado: Seg Dez 03, 2018 10:23 am
por pedrobb
Consegui........
Graças ao incrível Felipe Gualberto, no YouTube.
https://www.youtube.com/watch?v=5UzTuhJMWuQ

Re: Procedimento Muito Lento no Form [Resolvido]

Enviado: Seg Dez 03, 2018 10:48 am
por webmaster
Como não gostar do Felipe?

;)