PRJ: Macro per sommare i valori nell'elenco filtrato

Traduzione articoli Traduzione articoli
Identificativo articolo: 124482 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

La macro di esempio nella sezione "Informazioni" di Microsoft Project In questo articolo rappresenta la somma di valori numerici da un elenco di attivitā visibile e visualizza il totale in una riga di attivitā nella parte inferiore dell'elenco.

Informazioni

Microsoft fornisce esempi di Visual Basic, Applications Edition le procedure per illustrativo, senza garanzia espressa o implicita, inclusa, senza limitazione le garanzie implicite di commerciabilitā o idoneitā per un fine particolare. Le procedure di Visual Basic in questo articolo sono fornito "cosė com'č" e Microsoft non garantisce che puō essere utilizzati in tutte le situazioni. Mentre i professionisti del supporto Microsoft possono spiegare la funzionalitā di una macro particolare, nessun caso a modificare questi esempi per fornire funzionalitā aggiuntive, né verrā facilita la creazione di macro soddisfare esigenze specifiche. Se si dispone di esperienza di programmazione limitata č potrebbe essere necessario contattare un Microsoft Solution Provider. Soluzione I provider offrono una vasta gamma di servizi a pagamento, inclusa la creazione di macro personalizzate. Per ulteriori informazioni su Microsoft Solution Provider chiamare Microsoft Customer Information Service al numero (800) 426-9400.

La macro seguente somma i valori dai campi Numero1 di tutti i campi visibili attivitā. Dopo l'esecuzione della macro, verrā creata una nuova attivitā denominata "Totale" e vengono visualizzati alla fine del progetto attivo. Il campo Numero1 in questo attivitā conterrā la somma dei valori di Number1 per tutte le altre visibili attivitā.

Microsoft Project 2010 e 2013

  1. Nella scheda visualizzazione scegliere macro e fare clic su Visualizza macro.
  2. Immettere il nome "SumFilteredList e fare clic su Crea.
  3. Copiare il codice dal passaggio 6 seguente in Module1 aperto nell'editor di Visual Basic.
Per utilizzare questa macro, effettuare le seguenti operazioni:

  1. Selezionare una visualizzazione delle attivitā che utilizza una tabella, ad esempio il diagramma di Gantt.
  2. Consente di visualizzare solo le attivitā che si desidera calcolare un totale per applicando un filtro o da visualizzare o nascondere le sottoattivitā.
  3. Visualizzazione della barra multifunzione, selezionare la macroe quindi fare clic su Visualizza macro.
  4. Nell'elenco delle Macro, selezionare SumFilteredList e quindi fare clic su Esegui.


Microsoft Project 98, 2000, 2002, 2003 e 2007
  1. Scegliere Macro dal menu Strumenti, quindi macro.
  2. Nel campo Nome Macro digitare SumFilteredList. Fare clic su Crea.
  3. Microsoft Project 2010
  4. Scegliere la scheda Visualizza e fare clic su macro
  5. Nella finestra di dialogo macro tipo SumFilteredList il Nome della Macro depositato e fare clic su Crea.
  6. In Visual Basic Editor, immettere il codice riportato di seguito:
          Sub SumFilteredList()
          ' This macro totals up the values in the Number1 field
          ' for all visible (filtered) tasks, and displays this total
          ' at the bottom of the task list.
    
          Dim oTask As Task          ' Current task pointer
          Dim oTotalTask As Task     ' Totals task pointer
          Dim fTotal As Single       ' Used to hold totals
    
             ' Ignore error generated by trying to delete a task
             ' that does not exist.
             On Error Resume Next
             ' If totals task is present, delete it.
             ActiveProject.Tasks("Total:").Delete
             ' Re-enable default error handling
             On Error GoTo 0
    
             ' Select visible tasks
             SelectAll
             ' If tasks are selected, then loop through each of them
             If Not (ActiveSelection.Tasks Is Nothing) Then
                For Each oTask In ActiveSelection.Tasks
                    ' Add Number1 for each task to total
                   fTotal = fTotal + oTask.Number1   ' Field to Sum
                Next oTask
             Else
                ' There's nothing to add
                Exit Sub
             End If
    
              ' Create Totals task so it's visible
             Set oTotalTask = ActiveProject.Tasks.Add("Total:")
    
             ' Insure "Totals:" task is at outline level 1 (not indented)
             Do Until oTotalTask.OutlineLevel = 1
                  oTotalTask.OutlineOutdent
             Loop
    
             ' Put total in proper field
             oTotalTask.Number1 = fTotal             ' Field containing total
    
             ' Hide task bar for this task
             oTotalTask.HideBar = True
             ' Select totals row
             SelectRow oTotalTask.ID, False
             ' Set font to bold
             FontBold Set:=True
    
          End Sub
    						

Microsoft Project 4. x

  1. Scegliere Macro dal menu Strumenti.
  2. Fare clic su nuovo.
  3. Nel campo Nome Macro digitare SumFilteredList. Fare clic su OK.
  4. Nell'Editor del modulo, immettere il codice riportato di seguito:
          Sub SumFilteredList()
          ' This macro totals up the values in the Number1 field
          ' for all visible (filtered) tasks, and displays this total
          ' at the bottom of the task list.
    
          Dim oTask As Task          ' Current task pointer
          Dim oTotalTask As Task     ' Totals task pointer
          Dim fTotal As Single       ' Used to hold totals
    
             ' Ignore error generated by trying to delete a task
             ' that does not exist.
             On Error Resume Next
             ' If totals task is present, delete it.
             ActiveProject.Tasks("Total:").Delete
             ' Re-enable default error handling
             On Error GoTo 0
    
             ' Select visible tasks
             SelectAll
             ' If tasks are selected, then loop through each of them
             If Not (ActiveSelection.Tasks Is Nothing) Then
                For Each oTask In ActiveSelection.Tasks
                    ' Add Number1 for each task to total
                   fTotal = fTotal + oTask.Number1   ' Field to Sum
                Next oTask
             Else
                ' There's nothing to add
                Exit Sub
             End If
    
              ' Create Totals task so it's visible
             Set oTotalTask = ActiveProject.Tasks.Add("Total:")
    
             ' Insure "Totals:" task is at outline level 1 (not indented)
             Do Until oTotalTask.OutlineLevel = 1
                  oTotalTask.OutlineOutdent
             Loop
    
             ' Put total in proper field
             oTotalTask.Number1 = fTotal             ' Field containing total
    
             ' Hide task bar for this task
             oTotalTask.HideBar = True
             ' Select totals row
             SelectRow oTotalTask.ID, False
             ' Set font to bold
             FontBold Set:=True
    
          End Sub
    						
Per utilizzare questa macro, effettuare le seguenti operazioni:

  1. Selezionare una visualizzazione delle attivitā che utilizza una tabella, ad esempio il diagramma di Gantt.
  2. Visualizzare solo le attivitā che si desidera calcolare un totale per l'uno applicare un filtro per nascondere o visualizzare le sottoattivitā.
  3. Scegliere Macro dal menu Strumenti.
  4. Nell'elenco delle Macro, selezionare SumFilteredList e quindi fare clic su Esegui.
Per utilizzare questa macro, effettuare le seguenti operazioni:

  1. Selezionare una visualizzazione delle attivitā che utilizza una tabella, ad esempio il diagramma di Gantt.
  2. Visualizzare solo le attivitā che si desidera calcolare un totale per l'uno applicare un filtro per nascondere o visualizzare le sottoattivitā.
  3. Scegliere Macro dal menu Strumenti, quindi macro.
  4. Nell'elenco delle Macro, selezionare SumFilteredList e quindi fare clic su Esegui.

Modificare la Macro

Per sommare i valori dei campi diversi da Numero1, sostituire il riferimento a Numero1 nella riga di commento con "Campo somma" con il nome del campo per il quale si desidera derivare un totale. Inserire il totale in un campo diverso da Numero1, sostituire il riferimento a Numero1 nella riga di commento con "Campo contenente totale" con il nome del campo in cui si desidera effettivamente inserire il totale.

Ad esempio, se il campo che si desidera sommare un campo calcolato, ad esempio Costo o costo effettivo, quindi la somma deve essere inserita in un campo calcolato non ad esempio Costo1 o Numero1. Pertanto, per ottenere il totale costo campi per tutti attivitā visibile e mettere il totale nel campo Costo1 dell'attivitā "Totale" č necessario modificare le righe indicate come segue:
   fTotal = fTotal + oTask.Cost   ' Field to Sum
   oTotalTask.Cost1 = fTotal      ' Field containing total
				

Proprietā

Identificativo articolo: 124482 - Ultima modifica: lunedė 29 aprile 2013 - Revisione: 1.0
Le informazioni in questo articolo si applicano a:
  • Microsoft Project 98 Standard Edition
  • Microsoft Project 4.1 Standard Edition
  • Microsoft Project 4.0 Standard Edition
  • Microsoft Project 4.0 for Macintosh
  • Microsoft Office Project Standard 2007
  • Microsoft Office Project Standard 2003
  • Microsoft Project 2000 Standard Edition
  • Microsoft Project 2002 Standard Edition
  • Microsoft Project Standard 2010
  • Microsoft Office Project Professional 2007
  • Microsoft Office Project Professional 2003
  • Microsoft Office Project Server 2007
  • Microsoft Office Project Server 2003
  • Microsoft Project 2002 Professional Edition
  • Microsoft Project Professional 2010
  • Microsoft Project Server 2002
  • Microsoft Project Server 2010
  • Microsoft Project 2013 Professional
  • Microsoft Project 2013 Standard
Chiavi: 
kbcode kbhowto kbprogramming kbmt KB124482 KbMtit
Traduzione automatica articoli
IMPORTANTE: il presente articolo č stato tradotto tramite un software di traduzione automatica di Microsoft ed eventualmente revisionato dalla community Microsoft tramite la tecnologia CTF (Community Translation Framework) o da un traduttore professionista. Microsoft offre articoli tradotti manualmente e altri tradotti automaticamente e rivisti dalla community con l?obiettivo di consentire all'utente di accedere a tutti gli articoli della Knowledge Base nella propria lingua. Tuttavia, un articolo tradotto automaticamente, anche se rivisto dalla community, non sempre č perfetto. Potrebbe contenere errori di vocabolario, di sintassi o di grammatica. Microsoft declina ogni responsabilitā per imprecisioni, errori o danni causati da una traduzione sbagliata o dal relativo utilizzo da parte dei clienti. Microsoft aggiorna frequentemente il software e gli strumenti di traduzione automatica per continuare a migliorare la qualitā della traduzione.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 124482
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com