Somma celle con condizione



  • Somma solo se e..
    di Tod (utente non iscritto) data: 23/01/2009

    Buonasera a tutti,
    in un foglio ho questi dati:
    a b c
    data tipo spesa costo
    01/01/2007 pane 42,00
    02/02/2009 mele 12,00
    06/02/2007 pere 22,00
    10/01/2009 banane 33,00
    11/01/2007 biscotti 24,00

    vorrei poter sommare i dati della colonna costo, ma solamente quelli che fanno parte dello stesso mese e dello stesso anno.
    con il codice qui sotto riesco a sommare tutti i dati di tutti i mesi.
    come posso dire al codice di sommare solo i costi del mese di gennaio del 2007?
    mi potete aiutare a risolvere questo. grazie


     
    Sub Somma()
    Set Intervallo = Range("C2")
    With Intervallo
    For indice = 1 To 1000
    .Cells(indice).Select
    a = ActiveCell.Value
    b = b + a
    Next
    End With
    End Sub
    
    



  • di Ricky53 data: 23/01/2009

    Ciao,
    perchè hai pensato a scrivere del codice vba e non hai utilizzato le funzionalità di excel: ad esempio il filtro automatico, filtra per la data inserendo le condizioni di filtratura mediante "personalizza", quindi, dopo l'ultima cella della colonna "costo" inserisci la funzione subtotale per sommare solo i dati filtrati.

    altra soluzione e quella di utilizzare le tabelle pivot: dalla barra dei menu, dati, rapporto tabella pivot e ..., poii segui la composizione guidata.

    ciao da ricky53


  • Somma solo se e...
    di Tod (utente non iscritto) data: 24/01/2009

    Ciao ricky53,
    grazie per i suggerimenti, ma avevo già io precedentemente escluso. volevo tassativamente utilizzare la macro senza dover toccare le celle e/o i fogli, o formule ecc.
    hai qualche soluzione a livello di sola macro?
    grazie
    ciao



  • di Ricky53 data: 24/01/2009

    Ciao,
    fare una macro che faccia quanto da te chiesto non è compleso ma richiede un po' di impegno.
    puoi operare così:
    1. ordinare per data-tipo spesa ed individuare il numero di righe
    2. con un ciclo for/next (in base al numero di righe trovato prima) scorrere i dati e a parità di anno-mese-tipo spesa sommare i costi
    3. al cambiamento di quanto al punto 2. scrivi una riga con i dati seguenti anno-mese-tipo spesa-costo
    4. al cambiamento di mese, volendo, puoi riportare un totale spesa relativo a tutte le spese
    5. al cambiamento di anno puoi, volendo, riportare un totale spesa relativo a tutte le spese

    come vedi le necessità possono essere diverse.

    per questo ti sconsiglio la macro e rinnovo il consiglio sull’utilizzo dei filtri o delle pivot

    i filtri e le pivot non modificano il contenuto delle celle e nemmeno l'organizzazione dei dati.

    i filtri agiscono sulla visualizzazione delle righe
    le pivot generano un nuovo foglio con la possibilità di fare vari tipi di riepiloghi.

    prova con le pivot e vedrai che avrai risolto.

    non ti fossilizzare per forza con le macro.
    segui il consiglio di chi usa le macro per tantissime necessità.
    prime di mettere in atto una soluzione occorre sempre analizzare cosa si vuole ottenere e cercare la soluzione più semplice e flessibile.

    analizza bene le tue necessità e fatti sentire.

    ciao da ricky53



  • di Tod (utente non iscritto) data: 25/01/2009

    Grazie ricky53 del tuo professionale aiuto; mi rendo conto che è la migliore cosa da fare.
    ancora un ringraziamento.