none
Problemas com Procedimentos muito grande! RRS feed

  • Pergunta

  • Alô galera VBA!!

    Espero que todos vcs estejam na paz de Deus!

    Gente, to com fazendo um projeto VBA/Excel para lançamento de notas escolares em um mapa (planilha). Pelo fato de serem vários alunos e várias disciplinas o Procedimento que codifiquei no meu projeto é grande demais para ser executado. Quando vou fazer o teste de execução no VBA, dá uma mensagem de "erro de compilação: Procedimento muito grande!"

    O que que eu faço???

    Aqui ta o link para download do meu projeto

    http://www.4shared.com/file/232861985/8fcecbfc/mapa_de_notas_envio_.html

    Se alguém puder baixar e dar uma olhada e uma luz para mim, agradeço.
    terça-feira, 2 de março de 2010 15:59

Respostas

  • Olá...Graça e paz....
    Muito grande mesmo....teve ter te dado muito trabalho...
    Enxuguei o seu código só no 1º if....agora você pode adaptar nos outros...
    Usei um for para percorrer os controles e fiz referência a eles...assim não preciso fazer referência uma um...


    If ComboBox1 = "Língua Portuguesa" Then
            '###################### FOR PARA TEXTBOX ###############################
            J = 1
            For C = 2 To 6
                Select Case C
                    Case Is = 2: COLUNA = "B"
                    Case Is = 3: COLUNA = "C"
                    Case Is = 4: COLUNA = "D"
                    Case Is = 5: COLUNA = "F"
                    Case Is = 6: COLUNA = "G"
                End Select
                For I = 1 To 40
                    If J = 121 Then J = 161
                    Me.Controls("TextBox" & J).ControlSource = "Plan1!" & COLUNA & I + 1
                    J = J + 1
                Next
            Next
            '###################### FOR PARA LABEL ###############################
            J = 49
            For C = 1 To 2
                Select Case C
                    Case Is = 1: COLUNA = "E"
                    Case Is = 2: COLUNA = "I"
                End Select
                For I = 2 To 41
                    Me.Controls("Label" & J).Caption = Range(COLUNA & I)
                    J = J + 1
                Next
            Next
        End If

        exit sub
    end if
    • Marcado como Resposta Iranilce terça-feira, 9 de março de 2010 15:58
    quarta-feira, 3 de março de 2010 13:38