Método Application.AddSiteColumn (Project)
Adiciona uma coluna que fica disponível para a lista de tarefas no site sincronizado do SharePoint para o projeto ativo.
Sintaxe
expressão. AddSiteColumn (ProjectField, SharePointName)
expressão Uma variável que representa um Aplicativo objeto.
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
Projectfield | Opcional | PjField | Pode ser um de um subconjunto de constantes na enumeração PjField , que especifica o campo de projeto a ser exibido na nova coluna; não pode ser um dos campos proibidos (consulte Observações). |
SharePointName | Opcional | Variantes | O nome da nova coluna. |
Valor de retorno
Boolean
True se a coluna for adicionada.
Comentários
O método AddSiteColumn fornece o erro de tempo de execução 1004, "Erro definido pelo aplicativo ou definido pelo objeto", nos seguintes casos:
O projeto ativo não está associado a uma lista de tarefas sincronizadas do SharePoint. Se o projeto for local, você poderá usar o método LinkToTaskList para criar uma lista de tarefas sincronizadas do SharePoint.
O nome da coluna já existe na lista de tarefas do SharePoint. Para ver a lista de nomes de coluna, abra a lista de tarefas no SharePoint e escolha Modificar Exibição na guia LIST . A página Configurações > Editar Exibição mostra todos os nomes de coluna disponíveis para a lista de tarefas.
O valor ProjectField é um campo que não é tarefa, como pjResourceActualCost. Uma lista de tarefas do SharePoint mostra campos de tarefa, não campos de recursos.
O valor ProjectField é um campo personalizado da empresa, como pjTaskEnterpriseProjectText1 ou um campo de tabela de pesquisa, como pjTaskResourceEnterpriseRBS. Campos personalizados de tarefa local, como pjTaskText1, são válidos.
O valor ProjectField é um dos campos proibidos na Tabela 1. Esses campos são além dos campos de recursos proibidos e campos personalizados da empresa. Os campos são proibidos porque estão relacionados a outros campos proibidos ou têm tipos de valor que não têm suporte em uma lista de tarefas padrão do SharePoint.
Embora os campos proibidos mostrados na tabela a seguir possam parecer uma lista longa, das 1.338 constantes em PjField, há 357, incluindo campos personalizados de tarefa local, que podem ser usados com o método AddSiteColumn .
Campos proibidos adicionais
Campo | Campo | Campo |
---|---|---|
pjTaskActive | pjTaskActualOvertimeWork | pjTaskACWP |
pjTaskAssignmentDelay | pjTaskAssignmentPeakUnits | pjTaskAssignmentUnits |
pjTaskBaseline[1-10]BudgetCost | pjTaskBaseline[1-10]BudgetWork | pjTaskBaseline[1-10]FixedCostAccrual |
pjTaskBaselineBudgetCost | pjTaskBaselineBudgetWork | pjTaskBaselineFixedCostAccrual |
pjTaskBudgetCost | pjTaskBudgetWork | pjTaskCalendarGuid |
pjTaskConstraintDate | pjTaskConstraintType | pjTaskCostRateTable |
pjTaskDeliverableGuid | pjTaskDeliverableType | pjTaskDemandedRequested |
pjTaskEarnedValueMethod | pjTaskEnterpriseOutlineCode[1-30] | pjTaskExternalTask |
pjTaskFinishSlack | pjTaskFixedCostAccrual | pjTaskFreeSlack |
pjTaskGuid | pjTaskHideBar | pjTaskHyperlink |
pjTaskHyperlinkAddress | pjTaskHyperlinkHref | pjTaskHyperlinkScreenTip |
pjTaskHyperlinkSubAddress | pjTaskID | pjTaskIgnoreWarnings |
pjTaskIndicators | pjTaskIsAssignment | pjTaskLevelAssignments |
pjTaskLevelDelay | pjTaskLinkedFields | pjTaskManual |
pjTaskMilestone | pjTaskNotes | pjTaskObjects |
pjTaskOutlineCode[1-10] | pjTaskOutlineLevel | pjTaskOutlineNumber |
pjTaskPathDrivenSuccessor | pjTaskPathDrivingPredecessor | pjTaskPathPredecessor |
pjTaskPathSuccessor | pjTaskPreleveledFinish | pjTaskPreleveledStart |
pjTaskPriority | pjTaskResourceType | pjTaskStartSlack |
pjTaskStatus | pjTaskStatusIndicator | pjTaskSubproject |
pjTaskSubprojectReadOnly | pjTaskTotalSlack | pjTaskType |
pjTaskWarning | pjTaskWorkContour |
É possível adicionar um campo que já existe na lista de tarefas, se você usar um nome exclusivo para o parâmetro SharePointName , embora o valor de fazê-lo seja questionável.
Exemplo
Para usar a macro AddDurationColumns, crie uma lista de tarefas em um site do SharePoint, crie um projeto em Project Professional e use o método LinkToTaskList para importar a lista de tarefas. Defina uma linha de base para o projeto ativo usando o comando Definir Linha de Base na guia PROJECT da faixa de opções e altere a duração de algumas tarefas.
A macro AddDurationColumns adiciona duração da tarefa e duração da linha de base à lista de colunas disponíveis na lista de tarefas do SharePoint (consulte Figura 1).
Observação
Depois de executar a macro AddDurationColumns, você deve salvar o projeto em Project Professional para sincronizar suas alterações com a lista de tarefas do SharePoint.
Sub AddDurationColumns()
Dim success As Boolean
Dim results As String
Dim columnName As String
Dim fieldName As PjField
results = ""
' Add the first column.
fieldName = pjTaskBaselineDurationText
columnName = "Baseline duration"
' If the field name exists in the SharePoint tasks list, or fieldName
' is one of the prohibited fields, the AddSiteColumn method
' returns error 1100.
On Error Resume Next
success = AddSiteColumn(fieldName, columnName)
If success Then
results = "Added site column: " & columnName
Else
results = "Error in AddSiteColumn: " & columnName
End If
' Add the second column.
fieldName = pjTaskDurationText
columnName = "Current duration"
success = AddSiteColumn(fieldName, columnName)
If success Then
results = results & vbCrLf & "Added site column: " & columnName
Else
results = results & vbCrLf & "Error in AddSiteColumn: " & columnName
End If
Debug.Print results
End Sub
Depois de salvar o projeto, vá para a lista de tarefas no SharePoint. Na guia LISTA , selecione o comando Modificar Exibição . Na página Configurações – Editar Exibição, selecione o campo Duração da linha de base e o campo Duração atual que a macro AddDurationColumns adicionou. A Figura 1 mostra a lista de tarefas com os dois novos campos.
Figura 1. Adicionar campos a uma lista de tarefas sincronizada do SharePoint
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.