Risultati da 1 a 17 di 17

Discussione: Correzione macro per creare tabelle riassuntive



  1. #1
    L'avatar di Lino Albanese
    Clicca e Apri
    Data Registrazione
    Apr 2016
    Località
    san severo fg
    Età
    36
    Messaggi
    8
    Versione Office
    excel 2013
    Likes ricevuti
    0
    Likes dati
    2

    Correzione macro per creare tabelle riassuntive

    Ciao a tutti sono nuovo del forum. Ho un sito e-commerce ed un negozio "fisico". se vi va questo è il mio sito www.myriamartesacrastore.it

    Devo mettere in ordine dei dati, entrate e uscite. Lo scorso anno non l'ho fatto ed ora mi piacerebbe, anche perchè risolverei il problema una volta per tutte, inserire i dati automaticamente. Tra i tanti questiti:
    come faccio a creare una tabella automaticamente dalle voci che inserisco?.

    DATA ENTRATE CATEGORIAENTRATE IMPORTOE USCITE CATEGORIAUSCITE IMPORTO USCITE
    1/1/15stipendio stipendi 1.500
    questa è la maschera iniziale in cui inserisco i dati quotidianamente, che devono andare a generare diverse tabelle (pensavo con delle macro apposite):
    - tabella 1
    DATA STIPENDIO
    1/1/15 1500

    lo stesso giorno inserisco altri tipo di entrate e crea un'altra colonna affianco a STIPENDIO.

    comunque allego il file (bozza)
    Spero di esser stato chiaro...
    Vi prego di aiutarmi perchè sono in stallo.

    Grazie
    LIno
    File Allegati File Allegati
    Ultima modifica fatta da:Canapone; 23/04/16 alle 22:54

  2. #2
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126

    Re: Buongiorno

    Ciao Lino Benvenuto in forumexcel.it
    ti ho spostato questa tua domanda nella sezione giusta "domande su excel in generale", perchè l'avevi messa nella sezione delle presentazioni, e forse per questo che nessuno ti ha ancora risposta
    buon proseguimento nel forum
    Saluti

  3. #3
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126

    Re: Buongiorno

    Ciao Lino,
    ho dato una occhiata ma non riesco a capire cosa vorresti ottenere
    cerca di essere più conciso e descrittivo specificando in quale foglio e in quali intervalli di celle vuoi le formule e specificando che tipo di operazione vorresti avere
    aiutaci ad aiutarti!
    Ciao

  4. I seguenti utenti hanno dato un "Like"


  5. #4

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4016
    Versione Office
    2013
    Likes ricevuti
    1225
    Likes dati
    923

    Re: Buongiorno

    Ciao a tutti,
    concordo con Gerardo!
    Nemmeno io ho capito i vari riferimenti.... ed aggiungo che se non sei pratico di VBA la cosa ti risulterà un pò ardua da modificare (in caso di una soluzione), visto che quello allegato non credo sia il file originale (strutturalmente parlando).

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  6. I seguenti utenti hanno dato un "Like"


  7. #5
    L'avatar di Lino Albanese
    Clicca e Apri
    Data Registrazione
    Apr 2016
    Località
    san severo fg
    Età
    36
    Messaggi
    8
    Versione Office
    excel 2013
    Likes ricevuti
    0
    Likes dati
    2

    Re: Buongiorno

    Ok, allora scusatemi.
    Ricominciamo: in allegato ho inserito un nuovo foglio elettronico. Spero che questo sia più chiaro.
    Ho inserito delle note per spiegare al meglio.
    Come tu Gerardo hai più volte detto "ho prima fissato il mio obbiettivo" che spiego nel foglio.
    Spero mi possiate aiutare, l'analisi di questi dati per me è fondamentale. portate pazienza non sono molto pratico.
    grazie in anticipo.
    File Allegati File Allegati

  8. #6
    L'avatar di Gerardo Zuccalà
    Clicca e Apri
    Data Registrazione
    May 2015
    Località
    Milano, Italy
    Età
    49
    Messaggi
    4916
    Versione Office
    2013
    Likes ricevuti
    1117
    Likes dati
    1126

    Re: Buongiorno

    Ciao Lino
    adesso è più chiaro sopratutto la parte relativa all'archiviazione dati, sembra che la tua macro funzione bene anche se il codice generato dal registratore è un po da pulire, sicuramente gli esperti VBA di questo forum ti possono creare un bel codice senza usare il registratore e quindi posso archiviarti i dati in ordine di data (più recente o meno recente)
    Comuque al tuo file farei delle modifiche, perche il "data entry" che hai creato nell'intervallo A2:G2 io lo metterei verticale anzichè orizzontale (vedi Immagine) oppure ancora meglio si potrebbe fare una bella "userForm" ma questo è mestiere di esperti VBA che come si sa non'è certo il mio forte.. in attesa che qualcuno ti risponde
    Un saluto



    A
    B
    2
    DATA
    3
    DESCRIZIONE ENTRATA
    4
    CATEGORIA ENTRATA
    5
    IMPORTOE
    6
    DESCRIZIONE USCITA
    7
    CATEGORIA USCITA
    8
    IMPORTOU

  9. #7

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7132
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2063
    Likes dati
    1299

    Re: Buongiorno

    Ciao Lino,
    se ho capito bene la tua richiesta dovrebbe andare bene così.

    Codice: 
    Sub archivia()
    Dim wks1 As Worksheet, y As Long
    Set wks1 = Worksheets("Foglio1")
    With wks1
        Application.ScreenUpdating = False
        y = 2
        While .Range("K" & y).Value <> ""
            y = y + 1
        Wend
        .Range("K" & y) = .Range("A2")
        .Range("R" & y) = .Range("A2")
        .Range("Y" & y) = .Range("A2")
        .Range("AC" & y) = .Range("A2")
        .Range("L" & y) = .Range("B2")
        .Range("Z" & y) = .Range("B2")
        .Range("S" & y) = .Range("C2")
        .Range("T" & y) = .Range("D2")
        .Range("M" & y) = .Range("D2")
        .Range("AA" & y) = .Range("D2")
        .Range("N" & y) = .Range("E2")
        .Range("AD" & y) = .Range("E2")
        .Range("U" & y) = .Range("F2")
        .Range("O" & y) = .Range("G2")
        .Range("U" & y) = .Range("F2")
        .Range("V" & y) = .Range("G2")
        .Range("AE" & y) = .Range("G2")
        .Range("K2:O" & Rows.Count).End(xlDown).Sort Key1:=Range("K2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("R2:V" & Rows.Count).End(xlDown).Sort Key1:=.Range("R2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("Y2:AA" & Rows.Count).End(xlDown).Sort Key1:=.Range("Y2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("AC2:AE" & Rows.Count).End(xlDown).Sort Key1:=.Range("AC2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("A2") = ""
        .Range("B2") = ""
        .Range("C2") = ""
        .Range("D2") = ""
        .Range("E2") = ""
        .Range("F2") = ""
        .Range("G2") = ""
        Set wks1 = Nothing
        Application.ScreenUpdating = True
        Application.CutCopyMode = False
        End With
    End Sub
    File Allegati File Allegati
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  10. #8
    L'avatar di ggratis
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Lecce - Pisa
    Età
    45
    Messaggi
    737
    Versione Office
    Excel 2010
    Likes ricevuti
    257
    Likes dati
    215

    Re: Buongiorno

    Ciao Lino,
    ti aggiungo un'ulteriore alternativa...
    quando aggiungi i vari campi nel registro, ti può essere d'aiuto, selezionata la cella, digitare in contemporanea i tasti "alt"+"freccetta in basso", ti si attiva un menù a discesa dei valori unici del campo che stai compilando
    puoi duplicare a piacimento i fogli di ricerca per avere il quadro della situazione che ti serve ...

    saluti
    File Allegati File Allegati

  11. #9
    L'avatar di Lino Albanese
    Clicca e Apri
    Data Registrazione
    Apr 2016
    Località
    san severo fg
    Età
    36
    Messaggi
    8
    Versione Office
    excel 2013
    Likes ricevuti
    0
    Likes dati
    2

    Re: Buongiorno

    signori ringrazio veramente tutti per l'aiuto. Ottima idea le USERFORM di Gerardo. sto utilizzando il file di GES per ora, in quanto poi utilizzerò le tabelle pivot di GGRATIS.
    Sto riscontrando ulteriori anomali, in questo file ho scritto tutto. Capisco che vi sembrerà una perdita di tempo ma per me utilizzare questo file è di importanza vitale per la mia azienda.
    Considerate che risolverei un problema che dura da anni, cioè l'inserimento dei dati.
    Per cui vi chiedo veramente uno sforzo, non sono riuscito a trovare un gestionale che soddisfi i criteri con cui io voglio raggruppare i dati.

    Vi ringrazio, in ogni caso.
    File Allegati File Allegati

  12. #10

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4016
    Versione Office
    2013
    Likes ricevuti
    1225
    Likes dati
    923

    Re: Buongiorno

    Ciao a tutti,

    @Lino
    il debug è corretto... infatti hai modificato i nomi dei fogli ma non hai fatto lo stesso nel codice.

    L'ex "Foglio1" adesso si chiama "INPUT", quindi nel codice (3° riga) dovrai riferirti a quel nome:

    Codice: 
    Sub archivia()
    Dim wks1 As Worksheet, y As Long
    Set wks1 = Worksheets("INPUT")
    With wks1
        Application.ScreenUpdating = False
        y = 2
        While .Range("K" & y).Value <> ""
            y = y + 1
        Wend
        .Range("K" & y) = .Range("A2")
        .Range("R" & y) = .Range("A2")
        .Range("Y" & y) = .Range("A2")
        .Range("AC" & y) = .Range("A2")
        .Range("L" & y) = .Range("B2")
        .Range("Z" & y) = .Range("B2")
        .Range("S" & y) = .Range("C2")
        .Range("T" & y) = .Range("D2")
        .Range("M" & y) = .Range("D2")
        .Range("AA" & y) = .Range("D2")
        .Range("N" & y) = .Range("E2")
        .Range("AD" & y) = .Range("E2")
        .Range("U" & y) = .Range("F2")
        .Range("O" & y) = .Range("G2")
        .Range("U" & y) = .Range("F2")
        .Range("V" & y) = .Range("G2")
        .Range("AE" & y) = .Range("G2")
        .Range("K2:O" & Rows.Count).End(xlDown).Sort Key1:=Range("K2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("R2:V" & Rows.Count).End(xlDown).Sort Key1:=.Range("R2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("Y2:AA" & Rows.Count).End(xlDown).Sort Key1:=.Range("Y2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("AC2:AE" & Rows.Count).End(xlDown).Sort Key1:=.Range("AC2"), _
        Order1:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
        MatchCase:=False, Orientation:=xlTopToBottom, _
        DataOption1:=xlSortNormal
        .Range("A2") = ""
        .Range("B2") = ""
        .Range("C2") = ""
        .Range("D2") = ""
        .Range("E2") = ""
        .Range("F2") = ""
        .Range("G2") = ""
        Set wks1 = Nothing
        Application.ScreenUpdating = True
        Application.CutCopyMode = False
        End With
    End Sub
    File Allegati File Allegati

    "Sono le persone che nessuno immagina che possano fare certe cose, quelle che fanno cose che nessuno può immaginare."

  13. #11

    L'avatar di ges
    Clicca e Apri
    Data Registrazione
    Jun 2015
    Località
    Como
    Età
    53
    Messaggi
    7132
    Versione Office
    2011MAC 2016WIN
    Likes ricevuti
    2063
    Likes dati
    1299

    Re: Buongiorno

    Ciao,
    come ti ha correttamente segnalato Cromagno, che saluto, il debug è dovuto al fatto che hai cambiato il nome del foglio e con la sua correzione risolvi.

    Nel caso vuoi che la macro agisca sul primo foglio indipendentemente dal nome che gli assegni puoi utilizzare la seguente denominazione in rosso:

    Codice: 
    Dim wks1 As Worksheet, y As Long
    Set wks1 = Worksheets(1)
    With wks1
    ....
    .... ecc.ecc.
    In tal caso, qualunque modifica del nome del foglio non ti creerà errori.
    Quando si scartano tutte le ipotesi possibili, quella che resta, anche se può sembrare improbabile, non può che essere quella giusta!

  14. #12
    L'avatar di ggratis
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Lecce - Pisa
    Età
    45
    Messaggi
    737
    Versione Office
    Excel 2010
    Likes ricevuti
    257
    Likes dati
    215

    Re: Buongiorno

    Ciao Lino,
    siccome hai parlato di Tabelle Pivot, ti ho inserito anche quelle che in effetti, strutturato bene il database, ti risolvono pienamente il problema ;-); io avevo semplicemente utilizzato dei filtri avanzati che si attivano attivando i campi in giallo...

    Tu dovrai semplicemente registrare nel foglio registro le informazioni e poi nei restanti fogli aggiornare le tabelle pivot o il filtro dati.

    Saluti
    gg
    File Allegati File Allegati

  15. I seguenti utenti hanno dato un "Like"


  16. #13
    L'avatar di Lino Albanese
    Clicca e Apri
    Data Registrazione
    Apr 2016
    Località
    san severo fg
    Età
    36
    Messaggi
    8
    Versione Office
    excel 2013
    Likes ricevuti
    0
    Likes dati
    2

    Re: Buongiorno

    OTTIMO... grazie ggratis

  17. #14
    L'avatar di Lino Albanese
    Clicca e Apri
    Data Registrazione
    Apr 2016
    Località
    san severo fg
    Età
    36
    Messaggi
    8
    Versione Office
    excel 2013
    Likes ricevuti
    0
    Likes dati
    2

    Re: Buongiorno

    si ora capisco dov'è l'errore.
    grazie mille

  18. #15
    L'avatar di Lino Albanese
    Clicca e Apri
    Data Registrazione
    Apr 2016
    Località
    san severo fg
    Età
    36
    Messaggi
    8
    Versione Office
    excel 2013
    Likes ricevuti
    0
    Likes dati
    2

    Re: Buongiorno

    credo anche di aver risolto il problema dell'intervallo nel cerca verticale... ho capito che devo bloccare le celle $$$$ ma credo anche che per rifare tutti i mesi dovrò farlo a mano. però ancora non riesco a formattare bene le tabelle e non riesco a cancellare quella maledetta riga vuota...:174::174::174::174::256:

  19. #16
    L'avatar di ggratis
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Lecce - Pisa
    Età
    45
    Messaggi
    737
    Versione Office
    Excel 2010
    Likes ricevuti
    257
    Likes dati
    215

    Re: Buongiorno

    Citazione Originariamente Scritto da Lino Albanese Visualizza Messaggio
    OTTIMO... grazie ggratis
    Hai provato ad usarlo?

    Inviato dal mio GT-I9105P utilizzando Tapatalk

  20. #17
    L'avatar di ggratis
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Lecce - Pisa
    Età
    45
    Messaggi
    737
    Versione Office
    Excel 2010
    Likes ricevuti
    257
    Likes dati
    215

    Re: Buongiorno

    ah
    ai
    aj
    ak
    al
    am
    an
    ao
    ap
    aq
    ar
    as
    at
    au
    1
    2016
    2
    categoria entrata gennaio febbraio marzo aprile maggio giugno luglio agosto settembre ottobre novembre dicembre totale anno per voce
    3
    negozio alex
    € -
    € 882.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 882.00
    4
    negozio assegni
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    5
    negozio bonifici
    € -
    € 800.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 800.00
    6
    negozio contanti
    € -
    € 2.105.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 2.105.00
    7
    negozio pos
    € -
    € 2.081.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 2.081.00
    8
    sito assegni
    € -
    € 5.695.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 5.695.00
    9
    sito bonifici
    € -
    € 145.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 145.00
    10
    sito carte
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    11
    sito contanti
    € -
    € 1.015.86
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 1.015.86
    12
    sito paypal
    € -
    € 1.285.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 1.285.00
    13
    sito postepay
    € -
    € 110.00
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € -
    € 110.00
    14
    € -
    15
    totale negozio
    € -
    € 5.868.00
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    € 5.868.00
    16
    totale sito
    € -
    € 8.250.86
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    € 8.250.86
    17
    totale entrate
    € -
    € 14.118.86
    0
    0
    0
    0
    0
    0
    0
    0
    0
    0
    € 14.118.86

    per la compilazione dei sintetici mensili, puoi fare così:
    in [AH1]metti la data del primo dell'anno che stai analizzando (e che ho formattato in modo che si veda soltanto l'anno)
    in [AI3] scrivi =SOMMA.PIÙ.SE($T:$T;$S:$S;$AH3;$R:$R;">="&DATA.MESE($AH$1;COLONNE($AI$3:AI3)-1);$R:$R;"<"&DATA.MESE($AH$1;COLONNE($AI$3:AI3))-1)
    quindi trascini la formula fino alla cella [AT13]
    ti allego il file per le altre tabelle puoi fare da solo è semplice ;)
    File Allegati File Allegati

Discussioni Simili

  1. [Risolto] Correzione macro salva file
    Di Vincenzo Damiani nel forum Domande su Excel VBA e MACRO
    Risposte: 3
    Ultimo Messaggio: 24/02/17, 08:24
  2. [Risolto] Correzione Macro registra pagamento
    Di Vincenzo Damiani nel forum Domande su Excel VBA e MACRO
    Risposte: 9
    Ultimo Messaggio: 11/01/17, 09:58
  3. [Risolto] Link Excel-Word o creare tabelle ad-hoc
    Di andre nel forum Domande su Excel in generale
    Risposte: 2
    Ultimo Messaggio: 15/12/16, 12:44
  4. Aiuto correzione macro
    Di lala10 nel forum Domande su Excel VBA e MACRO
    Risposte: 26
    Ultimo Messaggio: 12/06/16, 00:46
  5. Aiuto per creare clienti con relative tabelle
    Di Obscures nel forum Domande su Excel in generale
    Risposte: 9
    Ultimo Messaggio: 29/09/15, 21:39

Tag per Questa Discussione

Permessi di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •