none
Erro em Macro no MsProject RRS feed

  • Pergunta

  • Bom dia,

    Criei uma macro no MsProject para calcular um percentual relativo baseado no peso de cada nível, buscando o valor de um campo personalizado.. 

    Sub CalcularPercentualRelativo()
        Dim Tarefa As Task
        Dim TrabalhoTotal As Double
        Dim TrabalhoTotalNivel1 As Double
        Dim TrabalhoTotalNivel2 As Double
        Dim TrabalhoTotalNivel3 As Double
        Dim TrabalhoTotalNivel4 As Double
        Dim Percentual As Double
        
        For Each Tarefa In ActiveProject.Tasks
            If Tarefa.ID = 1 Then
                TrabalhoTotal = Tarefa.GetField(FieldNameToFieldConstant("Peso*", pjTask))
            ElseIf Tarefa.Summary Then
                
                If Tarefa.OutlineLevel = 2 Then
                    TrabalhoTotalNivel1 = Tarefa.GetField(FieldNameToFieldConstant("Peso*", pjTask))
                    If TrabalhoTotalNivel1 > 0 Then
                        Tarefa.Text30 = (TrabalhoTotalNivel1 / TrabalhoTotal) * 100
                    End If
                ElseIf Tarefa.OutlineLevel = 3 Then
                    TrabalhoTotalNivel2 = Tarefa.GetField(FieldNameToFieldConstant("Peso*", pjTask))
                    If TrabalhoTotalNivel2 > 0 Then
                        Tarefa.Text30 = (TrabalhoTotalNivel2 / TrabalhoTotalNivel1) * 100
                    End If
                ElseIf Tarefa.OutlineLevel = 4 Then
                    TrabalhoTotalNivel3 = Tarefa.GetField(FieldNameToFieldConstant("Peso*", pjTask))
                    If TrabalhoTotalNivel3 > 0 Then
                        Tarefa.Text30 = (TrabalhoTotalNivel3 / TrabalhoTotalNivel2) * 100
                    End If
                ElseIf Tarefa.OutlineLevel = 5 Then
                    TrabalhoTotalNivel4 = Tarefa.GetField(FieldNameToFieldConstant("Peso*", pjTask))
                    If TrabalhoTotalNivel4 > 0 Then
                        Tarefa.Text30 = (TrabalhoTotalNivel4 / TrabalhoTotalNivel3) * 100
                    End If
                End If
                
            End If
        Next Tarefa
    End Sub

    O problema é quando eu jogo nessa coluna Text30, em alguns cronogramas funciona, em outros não. Curiosamente, dá erro em cronogramas migrados do 2007.

    "Erro em tempo de execução '1004':

    Erro inesperado com o método"

    Alguém já passou por um problema similar?


    terça-feira, 19 de junho de 2018 14:44