Boa Dia Pessoal... chegando agora no fórum...
Estou com alguns problemas em programação VBA. Acontece o seguinte, criei uma pequeno programa no VBA e quando vou executar a macro esta muito lento, aparece passo a passo, leva muito tempo para ser concluída. Já tentei muitas coisa e ate agora nada.
Desativei o calculo automático, atualizações da tela, etc...
'Sub auto_open() 'Application.Visible = False 'Application.OnKey "^+R", "MostraRibbon" 'Application.ScreenUpdating = False 'Application.Calculation = xlCalculationManual 'Application.DisplayFormulaBar = False 'Application.StatusBar = "Data do Sistema: " & Date 'Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",false)" 'ActiveWindow.DisplayGridlines = False 'ActiveWindow.DisplayHeadings = False 'ActiveWindow.DisplayHorizontalScrollBar = False 'ActiveWindow.DisplayVerticalScrollBar = False 'ActiveWindow.DisplayWorkbookTabs = False 'Frm_Menu.Show 'Sheets("menu inicial").Select 'End Sub
E nada resolveu.... e nesse brincadeira acabou sumindo os botaos fechar, minizar, restauzar da minha barra de status as planilha.
As variáveis que eu declarei são essas:
Dim Manejo As Long Dim DIngresso As Date Dim PesoInicial As Long Dim Custo As Currency Dim Vendedor As String Dim Pasto As String Dim Produtor As String Dim Raca As String Dim I As Long Dim Data As Date Dim Peso As Long Dim GPD As String Dim GPM As String Dim Valor As Currency Dim Resultado As Currency Dim Situação As String Dim Intervalo As Long Dim Pasto As String Dim Capim As String Dim Area As String Dim Nome As String Dim Telefone As String Dim Celular As String Dim Raca As String Dim Cidade As String Dim PesoIni As Long Dim DiaFaz As String Dim Limite As Long Dim NDias As String
E tem uns 10 formulários e separei os módulos para melhor organização... não sei se isso influencia na macro.
Creio eu que seja as declarações de variáveis que estão deixando a macro lenta... mas não posso tira-las...
O meu problema é:
Como deixar a macro mais ágil (esta muito lenta) e voltar as opções da barra de status da planilha ?
Podem me dar uma luz ?
Boa tarde!!
Por favor, leia as regras, seu titulo não é apropriado!!!
Nossas Regras
viewtopic.php?f=7&t=203
• TÍTULOS
Seja criativo na criação do título para um novo tópico, se imagine criando um título para uma notícia de um
jornal onde se lê o título já tendo uma idéia do que se trata o tópico, evite palavras vagas.
Leia:
http://www.cpearson.com/excel/optimize.htm
http://www.ozgrid.com/VBA/SpeedingUpVBACode.htm
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Ainda não funcionou...
e um outro problema são os botões (fechar, minimizar e Restaurar) da barra de status da planilha, eles sumirão e minha planilha já abre com um tamanho bem pequeno não dá para mexer.
Boa noite!!
Quanto a suas rotinas, tente postar seu arquivo modelo compactado!!
Quanto maximizar, tente descomentar as linha responsáveis ou tente um dos códigos abaixo.
Private Sub Workbook_Activate() On Error Resume Next With Application .DisplayFullScreen = True .CommandBars("Worksheet Menu Bar").Enabled = False End With End Sub Private Sub Workbook_Open() Application.WindowState = xlMaximized End Sub
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Já havia tentado esse códigos e nada funcionou.
O arquivo mesmo em Zip tem 10mb, não da para postar.
tem alguma outra opção para voltar os botões da barra de status da planilha (workbook)? 'do aplicativo esta aparecendo normal
Boa noite!!
Poste seu arquivo em site gratuito como sendspace,4shared ou outros e nos mande o link.
Att
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postei no 4shared.
http://www.4shared.com/zip/bgp0FyOo/Projeto_.html
Os códigos, Auto_Open e Auto close estão dentro do mudulo "Iniciar Senha"
Contribuindo.
A simples declaração de variáveis não deve gerar nenhum delay no processamento do código, pelo contrario, deve "facilitar" o processamento.
A abertura minimizada da planilha, deve-se ao fato da proteção da pasta de trabalho (iclusive proteção sem senha).
O tamanho de seu arquivo, apesar de não muito grande, está gerando uma lentidão no mesmo, apenas "limpando" os colunas/linhas não utilizados, o mesmo reduziu para 3.5 MB e ficou mais "ágil".
No no modulo do "auto open" há um erro devido a "inibição" de algumas linhas deixando códigos após o "end sub", o que gera erro e talvez depuração.
Transferi esses códigos para o modulo "Esta pasta de trabalho" e unifiquei o auto open e Workbook open, permanecendo este ultimo que é o mais recomendado.
Não testei todos as funcionalidades, porem na única que testei (cadastro de pasto), gerou um erro pois a planilha está protegida.
Havendo a necessidade/desejo de proteger a planilha, ao efetuar o cadastro/exclusão é necessário desprotege-la inicialmente e voltar a protege ao terminar o cadastro/exclusão.
Link do arquivo: http://www.4shared.com/zip/9iK7WQ4Y/Projeto_.html
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Muito Obrigado Reinaldo, a macro não esta mais lenta.. e enquanto a abertura minimizada era a opção "proteger pasta de trabalho"....
Reinaldo, so mais uma duvida, vc disse que apenas "limpando" os colunas/linhas não utilizados, o mesmo reduziu para 3.5 MB e ficou mais "ágil".
Que linhas/colunas foram essas que vc limpou ?
Veja em : viewtopic.php?f=28&t=3023
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel