Risultati da 1 a 25 di 25

Discussione: Spostare righe in modo condizionato



  1. #1
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0

    Spostare righe in modo condizionato

    Salve a tutti, sto cercando di risolvere un problema che a molti potrebbe apparire banale ma per me non lo è. Ho creato una file di excel con una serie di fogli con delle tabelle dove sono elencati degli articoli, e dove la prima colonna rappresenta la quantità e le altre la descrizione il prezzo etc. Ora avrei bisogno di riassumere su un altro foglio, solo le righe che hanno una quantità diversa da zero, in modo da ottenere una sola tabella dove vengono elencati le sole righe di articoli ordinati e senza righe vuote. E' una cosa difficile? Mi potete dare dei suggerimenti? Grazie a tutti.

  2. #2
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160
    Buona giornata.

    Credo esistano diversi modi.
    Senza ricorrere a VBA, potresti:
    - copiare il Foglio di lavoro iniziale in altro Foglio di lavoro
    - selezionare tutte le Celle presenti nella Colonna "Quantità"
    - premere F5
    - selezioni "Speciale..."
    - dal Menu contestuale, selezioni "Celle vuote"
    - Invio
    - tasto destro del Mouse
    - selezioni "Elimina ..."
    - dal Menu contestuale, selezioni "Sposta le celle in alto"

    Questa è solo una possibile soluzione.


    A disposizione.

    Buon Lavoro e buona serata.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  3. #3
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Grazie per l'aiuto Giuseppe. Io però cercavo un automatismo dinamico.
    Qualcosa che automaticamente copiasse le righe a secondo del valore immesso nella colonna quantità.
    :43:

  4. #4
    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
    Ciao GruppoSIA
    é meglio che inserisci un file in allegato (senza dati sensibili) con la descrizione del risultato che vuoi ottenere
    Aiutaci ad aiutarti!

  5. #5
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Citazione Originariamente Scritto da Gerardo Zuccalà Visualizza Messaggio
    Ciao GruppoSIA
    é meglio che inserisci un file in allegato (senza dati sensibili) con la descrizione del risultato che vuoi ottenere
    Aiutaci ad aiutarti!
    Ciao Gerardo, Allora come si vede nel file allegato di tratta di una tabella con quantità e descrizione articolo. Lo scopo che mi prefiggo è di analizzare alcune tabelle inserite in vari fogli, selezionare solo quelle righe dova la quantità sia pari o superiore ad 1 e spostare l'intera riga in un'altro foglio. SU questo foglio voglio ottenere un elenco delle righe dove la quantità sia uguale o superiore ad 1, e senza righe vuote. Spero di essere riuscito a spiegarmi. :41:
    File Allegati File Allegati

  6. #6

    L'avatar di alfrimpa
    Clicca e Apri
    Data Registrazione
    Dec 2015
    Località
    Napoli
    Età
    64
    Messaggi
    6800
    Versione Office
    2013
    Likes ricevuti
    720
    Likes dati
    165
    Ciao

    Anche qui ti allego file con la macro inserita e ti chiedo nuovamente: sei poi in grado di "adattarla" al tuo file "reale" visto che l'ho scritta sulla base dell'esempio che hai allegato?

    Tieni conto che, per motivi che magari spiegherò poi, su Foglio1 e Foglio2 non ci dovrebbero essere righe vuote.

    Codice: 
    Sub macro1()
    Dim i As Integer
    Dim rng As Range
    Dim cel As Range
    Dim ur As Long
    Application.ScreenUpdating = False
    For i = 1 To ThisWorkbook.Worksheets.Count - 1
    Sheets(i).Activate
    Set rng = Range("a1:a50") <=== questa è la istruzione che andrebbe modificata in base al numero delle righe presenti sui fogli
    For Each cel In rng
            If cel.Value = 1 Or cel.Value > 1 Then
                Range("a" & cel.Row & ":" & "d" & cel.Row).Copy Destination:=Worksheets("Riepilogo").Range("a" & ur + 1)
            End If
            ur = Worksheets("Riepilogo").Cells(Rows.Count, 1).End(xlUp).Row
        Next cel
    Next i
    Worksheets("Riepilogo").Select
    Application.ScreenUpdating = False
    End Sub
    Fai sapere.

    Alfredo
    File Allegati File Allegati

  7. #7
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160
    Buona sera a Tutti.

    @ GruppoSIA.

    Le scelte che è possibile compiere sono due.

    - senza VBA
    il risultato sarebbe questo:



    - con VBA
    il risultato sarebbe questo:



    Con VBA è possibile scgliere il Foglio di lavoro da analizzare; Funzione "Convalida dati" in Cella "E1".

    In funzione della soluzione più conveniente per le Tue esigenze, allegherò le Formule/CodiceVBA.


    A disposizione.

    Buona serata.

    Giuseppe





    Windows XP Excel 2000 - Windows 10 Excel 2013

  8. #8
    L'avatar di pkrome59
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Reggio Calabria
    Età
    58
    Messaggi
    1188
    Versione Office
    Office 2013
    Likes ricevuti
    1198
    Likes dati
    2133
    Ciao GruppoSIA e buona sera a tutti i partecipanti al forum.
    Un'altra alternativa potrebbe essere la seguente:

    =SE.ERRORE(INDICE(Foglio1!A$1:A$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!A1)));"")

    da incollare in A2 del foglio Report_Foglio1, trascinare a destra e tirare giù.
    Allego file di prova.
    File Allegati File Allegati

  9. I seguenti 2 utenti hanno dato un "Like" a pkrome59 per questo post:


  10. #9

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4019
    Versione Office
    2013
    Likes ricevuti
    1228
    Likes dati
    923
    Ciao a tutti,

    @GrupppoSIA

    come ti è stato detto anche nell'altro forum, il cross-posting non è gradito (soprattutto se viene fatto in nemmeno 30 minuti di distanza):
    http://www.excelvba.it/Forum/thread.php?f=1&t=10051

    Regola nr.3 "Crossposting" la stessa domanda vietata su più forum
    Non è consentito postare lo stesso messaggio o parti di esso in più aree del forum o su altri forum di excel, salvo casi di particolare interesse che dovranno comunque essere autorizzati da un Admin
    Messaggi crossposting verranno chiusi e quando possibile riuniti.
    Se ripetuti potranno portare all'allontanamento dell'utente.
    Non chiudo la discussione solo per rispetto verso gli utenti che si sono già impegnati a darti una soluzione.

    Per il futuro, leggi bene il regolamento (di questo o altri forum a cui partecipi)....

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

  11. #10
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160
    Citazione Originariamente Scritto da cromagno Visualizza Messaggio
    Ciao a tutti,

    @GrupppoSIA

    come ti è stato detto anche nell'altro forum, il cross-posting non è gradito (soprattutto se viene fatto in nemmeno 30 minuti di distanza):
    http://www.excelvba.it/Forum/thread.php?f=1&t=10051
    Mbè, Cromagno, come recitavano i nostri Avi:
    - non c'è due senza tre ...
    http://freeforumzone.leonardo.it/d/11235034/Copiare-una-riga-condizionata-/discussione.aspx :258:

    Per quanto mi concerne, puoi chiudere quando vuoi Tu; io credo mi concentrerò a sviluppare una Formula tipo quella di @ pkrome59 ma con la Funzione "Indiretto" che identifica il "NomeFoglio"


    Quel burlone :32: di ... Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  12. I seguenti utenti hanno dato un "Like"


  13. #11
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Grazie Alfredo, più tardi ci provo e ti faccio sapere, anche se ti confesso che non ho nessuna confidenza con le macro:168::168:

  14. #12
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Ciao Giuseppe, naturalmente la più adatta è la seconda, anche se come già detto non ho molta confidenza con le macro ( nessuna), però ci provo e vedro cosa salta fuori, ti faccio sapere. Grazie

  15. #13
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Ho capito, non è gradito postare su più forum contemporaneamente, e pur non riuscendo a capire dove si ail problema mi adeguo. Però, proprio per la cortesia dovuta, ormai a quelli che hanno voluto aiutarmi una risposta le devo, e quindi, anche per mia cultura personale , testerò tutte le proposte e poi risponderò coni risultati.
    Detto questo, ed assodato la mia inesperienza con i forum di qualsiasi genere,per capirne meglio lo spirito, posso sapere come mai un comportamento che a
    me da esterno sembra ovvio, sia invece considerato negativo?

  16. #14

    L'avatar di cromagno
    Clicca e Apri
    Data Registrazione
    Aug 2015
    Località
    Sardegna
    Età
    37
    Messaggi
    4019
    Versione Office
    2013
    Likes ricevuti
    1228
    Likes dati
    923
    Citazione Originariamente Scritto da GruppoSIA Visualizza Messaggio
    Ho capito, non è gradito postare su più forum contemporaneamente, e pur non riuscendo a capire dove si ail problema mi adeguo. Però, proprio per la cortesia dovuta, ormai a quelli che hanno voluto aiutarmi una risposta le devo, e quindi, anche per mia cultura personale , testerò tutte le proposte e poi risponderò coni risultati.
    Detto questo, ed assodato la mia inesperienza con i forum di qualsiasi genere,per capirne meglio lo spirito, posso sapere come mai un comportamento che a
    me da esterno sembra ovvio, sia invece considerato negativo?
    Forse leggendo questo capirai il concetto principale. Il punto è il rispetto.
    Il Crossposting senza regole, ossia il lancio in un breve lasso di tempo (tipicamente nell'arco di poche ore) dello stesso thread su più canali di informazione diversi - quali ad esempio: Forum, Mailing List e Newsgroup - è considerato una prassi poco rispettosa, non tollerata dai Moderatori di questa Comunità, come tale punibile con il ban permanente dell'utente stesso. Si incentiva invece, a fare un buon uso del crossposting: chiunque è libero di consultare più canali di informazione e ricevere lumi sullo stesso argomento; è opportuno però osservare delle regole di comportamento ben precise.
    Rispetto verso chi si impegna ad aiutarti, mentre con il cross-posting a breve distanza dai ad intendere che ti interessa solo una risposta (anche se così non dovesse essere).... la classica "pappa pronta".
    Se leggi il regolamento, quasi tutti i punti sono legati tra loro e le regole sono quasi identiche in ogni forum proprio perchè dettate dall'esperienza di chi li ha sempre frequentati.
    Giusto per chiarire il punto del rispetto, molti utenti che postano la stessa domanda in più luoghi, alla prima risposta che gli va bene si eclissano senza degnare nemmeno di un grazie chi gli ha tolto le castagne dal fuoco.

    A prescindere, il regolamento esiste e se non viene rispettato si dev'essere consapevoli delle conseguenze.
    Se poi uno non lo vuole leggere, libero di farlo, ma il regolamento verrà applicato ugualmente.

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

  17. #15
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Bene, ho capito, adesso è più chiaro. In sostanza se uno vuole postare la stessa domanda su più forum, può farlo dopo essersi interfacciato con gli utenti di un forum e non è riuscito a trovare una soluzione. Ho capito bene?

  18. #16
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160
    Buona sera a Tutti.
    Visto che la Discussione rimane disponibile, come promesso, rendo disponibili i Codici VBA.
    I Codici VBA, in realtà sono tre:
    In Microsoft Excel Oggetti:
    Foglio3 (Report)

    Codice: 
    Option Explicit
    
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Address = "$E$1" Then Analizza_Foglio
    End Sub
    In un Modulo:

    Codice: 
    Option Explicit
    
    Sub Analizza_Foglio()
    Application.ScreenUpdating = False
    Dim NRc As Long, x As Long, y As Long
    Dim Fgl As String
    
        Sheets("Report").Select
        NRc = Range("A" & Rows.Count).End(xlUp).Row
            If NRc < 2 Then NRc = 2
        Range("A2:D" & NRc).ClearContents
            Fgl = Cells(1, 5)
        With Worksheets(Fgl)
            NRc = .Cells(Rows.Count, 3).End(xlUp).Row
        
            y = 2
        For x = 2 To NRc
            If VarType(.Cells(x, 1)) = 5 Then
                Range(.Cells(x, 1), .Cells(x, 4)).Copy
                Cells(y, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
                    y = y + 1
            End If
        Next x
    Application.ScreenUpdating = True
        Application.CutCopyMode = False
        End With
            Cells(2, 1).Select
    End Sub
    Sub Analizza_Fogli()
    Application.ScreenUpdating = False
    Dim NRc As Long, x As Long, y As Long, Fgl As Long
    Dim NFgl As Byte
    
        Sheets("Report").Select
        NRc = Range("A" & Rows.Count).End(xlUp).Row
            If NRc < 2 Then NRc = 2
        Range("A2:D" & NRc).ClearContents
            y = 2
        For NFgl = 2 To Sheets.Count
        With Worksheets(NFgl)
            NRc = .Cells(Rows.Count, 3).End(xlUp).Row
            
        For x = 2 To NRc
            If VarType(.Cells(x, 1)) = 5 Then
                Range(.Cells(x, 1), .Cells(x, 4)).Copy
                Cells(y, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
                    y = y + 1
            End If
        Next x
        End With
        Next NFgl
    Application.ScreenUpdating = True
        Application.CutCopyMode = False
            Cells(2, 1).Select
    End Sub
    - Selezionando il NomeFoglio in Cella "E1", viene analizzato il Foglio di lavoro indicato
    - Premendo il Pulsante "Analizza tutti i Fogli di lavoro", vengono analizzati tutti i Fogli di lavoro, escluso "Report"; Report deve essere il primo Foglio di lavoro.

    In allegato il File.


    @ Guppo SIA, scrive:
    Bene, ho capito, adesso è più chiaro. In sostanza se uno vuole postare la stessa domanda su più forum, può farlo dopo essersi interfacciato con gli utenti di un forum e non è riuscito a trovare una soluzione. Ho capito bene?
    Direi che questo è il concetto; in questo caso, credo sarebbe buona norma condividere la soluzione prescelta con gli Utenti degli altri Forum. Poi, ovviamente decidi Tu.

    Quando credi di aver ottenuto il risultato desiderato, dovresti anteporre [RISOLTO] al titolo della Discussione.


    P.s. Non allego la Formula Excel, alternativa a VBA, in quanto non ho ancora risolto l'applicazione della Funzione indiretto nell'ottima soluzione proposta da @ pkrome59; ma ... non demordo! :292:


    A disposizione.

    Buona serata.

    Giuseppe
    File Allegati File Allegati
    Windows XP Excel 2000 - Windows 10 Excel 2013

  19. I seguenti 2 utenti hanno dato un "Like" a GiuseppeMN per questo post:


  20. #17
    L'avatar di pkrome59
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Reggio Calabria
    Età
    58
    Messaggi
    1188
    Versione Office
    Office 2013
    Likes ricevuti
    1198
    Likes dati
    2133
    Buona sera a Tutti
    Una parziale alternativa alle soluzioni molto eleganti proposte da GiuseppeMN, che saluto, con le formule potrebbe essere la seguente, illustrata nel file allegato.
    Cordiali saluti.
    File Allegati File Allegati

  21. #18
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Grazie della collaborazione Pkrome59, in effetti il tuo suggerimento importa in modo pulito privo di formattazioni le righe , il problema è che non esegue il controllo di tutti i fogli o meglio ogni foglio ha un riepilogo suo, ( foglio 1 riepilogo 1 etc ) mentre io ho molti fogli ed un solo riepilogo. In ogni caso mi è stato utile per imparare :271:

  22. #19
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Giuseppe sto tentando di modificare la tua proposta per adattarla ai mei bisogni, da profano mi sembra assolutamente perfetta, elegante e pulita, appena sarò effettivamente riuscito a risolvere, come promesso chiederò il permesso di pubblicare la soluzione negli altri siti ( cioè chiederò agli utenti degli altri siti se sono interessati a conoscerla, non vorrei si offendesse qualcuno). In ogni caso ho incontrato gente in gamba e credo proprio che continuerò a frequentare questi forum.
    Ti tengo informato sugli aggiornamento, per ora grazie . :274:

  23. #20
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    OK Ho risolto il mio problema utilizzando i suggerimenti di Giuseppe, ma ho imparato molto anche dai suggerimenti degli altri, inoltre mi stà tornando utilissimo leggere i post degli altri utenti , anche quelli vecchiotti, tutto molto utile.
    Se non mi cacciano credo proprio che rimarrò in questo forum.
    Buona Vita a tutti :41:

  24. #21
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Giuseppe ho parlato troppo presto, in realtà mi da due problemi. Dopo che ha elencato correttamente le righe, poi inserisce una riche che non capisco e poi ricomincia ricopiando le stesse righe. Praticamente riporta due volte lo stesso numero di righe ed in più ne mette una strana. Immagino che sia colpa mia perchè ho analizzato e tentato di modificare il tuo lavoro ( sopratutto per capirlo ed imparare qualcosa ). Ti inserisco sia l'immagine delle righe che la routine utilizzata.Dove ho sbagliato?
    Buona Domenica a tutti
    File Allegati File Allegati

  25. #22
    L'avatar di pkrome59
    Clicca e Apri
    Data Registrazione
    Sep 2015
    Località
    Reggio Calabria
    Età
    58
    Messaggi
    1188
    Versione Office
    Office 2013
    Likes ricevuti
    1198
    Likes dati
    2133
    Buona domenica a tutti e buona domenica a te GruppoSIA.
    Una alternativa alla soluzione con macro proposta da Giuseppe, che saluto, in chiave formule potrebbe essere la seguente:
    Foglio3;

    In A1:

    =SE.ERRORE(SE(VAL.ERRORE(INDICE(Foglio1!A$1:A$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!A1)))>0);INDICE(Foglio2!A$1:A$43;AGGREGA(15;6;(RIF.RIGA(Foglio2!$A$1:$A$43)-RIF.RIGA(Foglio2!$A$1)+1)/(VAL.NUMERO(Foglio2!$A$1:$A$43));RIF.RIGA(Foglio2!A1)-SOMMA(Report_Foglio1!$A$2:$A$43)));INDICE(Foglio1!A$1:A$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!A1))));"")


    In B1:

    =SE.ERRORE(SE(VAL.ERRORE(INDICE(Foglio1!B$1:B$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!B1)))>0);SE(INDICE(Foglio2!B$1:B$43;AGGREGA(15;6;(RIF.RIGA(Foglio2!$A$1:$A$43)-RIF.RIGA(Foglio2!$A$1)+1)/(VAL.NUMERO(Foglio2!$A$1:$A$43));RIF.RIGA(Foglio2!B1)-SOMMA(Report_Foglio1!$A$2:$A$43)))=0;"";INDICE(Foglio2!B$1:B$43;AGGREGA(15;6;(RIF.RIGA(Foglio2!$A$1:$A$43)-RIF.RIGA(Foglio2!$A$1)+1)/(VAL.NUMERO(Foglio2!$A$1:$A$43));RIF.RIGA(Foglio2!B1)-SOMMA(Report_Foglio1!$A$2:$A$43))));SE(INDICE(Foglio1!B$1:B$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!B1)))>0;INDICE(Foglio1!B$1:B$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!B1)));""));"")


    In C1:

    =SE.ERRORE(SE(VAL.ERRORE(INDICE(Foglio1!C$1:C$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!C1))));INDICE(Foglio2!C$1:C$43;AGGREGA(15;6;(RIF.RIGA(Foglio2!$A$1:$A$43)-RIF.RIGA(Foglio2!$A$1)+1)/(VAL.NUMERO(Foglio2!$A$1:$A$43));RIF.RIGA(Foglio2!C1)-SOMMA(Report_Foglio1!$A$2:$A$43)));INDICE(Foglio1!C$1:C$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!C1))));"")


    In D1:

    =SE.ERRORE(SE(VAL.ERRORE(INDICE(Foglio1!D$1:D$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!D1))));INDICE(Foglio2!D$1:D$43;AGGREGA(15;6;(RIF.RIGA(Foglio2!$A$1:$A$43)-RIF.RIGA(Foglio2!$A$1)+1)/(VAL.NUMERO(Foglio2!$A$1:$A$43));RIF.RIGA(Foglio2!D1)-SOMMA(Report_Foglio1!$A$2:$A$43)));INDICE(Foglio1!D$1:D$43;AGGREGA(15;6;(RIF.RIGA(Foglio1!$A$1:$A$43)-RIF.RIGA(Foglio1!$A$1)+1)/(VAL.NUMERO(Foglio1!$A$1:$A$43));RIF.RIGA(Foglio1!D1))));"")
    Allego file di prova.
    Ciao.
    File Allegati File Allegati

  26. I seguenti 2 utenti hanno dato un "Like" a pkrome59 per questo post:


  27. #23
    L'avatar di GiuseppeMN
    Clicca e Apri
    Data Registrazione
    Oct 2015
    Località
    Mantova
    Messaggi
    864
    Versione Office
    2000 - 2013
    Likes ricevuti
    285
    Likes dati
    160
    Buona sera a Tutti.

    @ GruppoSIA, scrive:
    Giuseppe ho parlato troppo presto, in realtà mi da due problemi. Dopo che ha elencato correttamente le righe, poi inserisce una riche che non capisco e poi ricomincia ricopiando le stesse righe. Praticamente riporta due volte lo stesso numero di righe ed in più ne mette una strana. Immagino che sia colpa mia perchè ho analizzato e tentato di modificare il tuo lavoro ( sopratutto per capirlo ed imparare qualcosa ). Ti inserisco sia l'immagine delle righe che la routine utilizzata.Dove ho sbagliato?
    Così, a prima vista, mi sembra che il Tuo Codice:
    - Analizza_Fogli
    non sia diverso da quello proposto in Risposta #16; testandolo, ottengo gli stessi risultati.

    L'unica cosa che non capico sono i Record:
    - i3M .......Inforyou Manager ver. Standard - Licenza valida fino a 500 utenti attivi e 1.500 anagrafiche
    - i3AC ......Modulo Controllo Accessi ver. Standard con controllo n. 1 lettore
    - i3ACLA ...Lettore aggiuntivo Modulo Controllo Accessi ver. Standard
    - i3MPA ....Postazione aggiuntiva Inforyou Manager ver. Standard
    - i3M .......Inforyou Manager ver. Standard - Licenza valida fino a 500 utenti attivi e 1.500 anagrafiche
    - i3AC ......Modulo Controllo Accessi ver. Standard con controllo n. 1 lettore
    - i3ACLA .. Lettore aggiuntivo Modulo Controllo Accessi ver. Standard
    - i3MPA ... Postazione aggiuntiva Inforyou Manager ver. Standard

    dei quali non trovo riscontro nei Fogli di lavoro:
    - Foglio1
    - Foglio2

    Molto probabilmente hai utilizzato il Codice in un File con Record diversi da quelli proposto inizialmente.

    L'unica cosa che posso proporti è di allegare il File, senza dati sensibili, con i nuovi Record; se ritieni di proseguire con VBA, posso rivedere il Codice in funzione dei nuovi Dati.



    A disposizione.

    Buona serata.

    Giuseppe
    Windows XP Excel 2000 - Windows 10 Excel 2013

  28. #24
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Grazie Giuseppe ti giro il file completo, se posso approfittare ancora mi piacerebbe che mettessi delle spiegazioni sulle linee in modo da far capire ad uno "elementare" come me, cosa fà il tuo codice, anche perchè sto girando molto nel forum e leggendo molte soluzioni per cercare di capire meglio questo mondo.
    (per quanto riguarda il file potrei mandartelo completo di tutto, non sono dati particolarmente sensibili però se si potesse sarebbe meglio poterteli mandare in privato e dopo, ripuliti di alcuni dati ripubblicarli qui, se si può naturalmente ).
    Per quanto riguarda la tua domanda, è si, ho copiato il tuo codice e poi ho cercato di adattarlo ai miei bisogni, il mio obiettivo infatti non è solo risolvere il problema che ho, ma anche imparare come risolverlo in futuro.

  29. #25
    L'avatar di GruppoSIA
    Clicca e Apri
    Data Registrazione
    Jan 2016
    Località
    Roma
    Messaggi
    14
    Versione Office
    Excel 2011
    Likes ricevuti
    0
    Likes dati
    0
    Pkrome ho provato ad installare i tuoi suggerimenti, però quando vado ad aumentare i fogli, cambiandogli nome , ottengo risultati non ottimali , ci sto riprovando cmq perchè mi sarà cmq utile per imparare meglio le formule.:246:

Discussioni Simili

  1. Copia e incolla condizionato
    Di LucaB85 nel forum Domande su Excel VBA e MACRO
    Risposte: 5
    Ultimo Messaggio: 05/03/17, 15:30
  2. [Risolto] Somma se condizionato
    Di Cucù^_^ nel forum Domande su Excel in generale
    Risposte: 4
    Ultimo Messaggio: 13/01/17, 10:32
  3. valore condizionato
    Di Dagatos nel forum Domande su Excel VBA e MACRO
    Risposte: 13
    Ultimo Messaggio: 23/03/16, 22:24
  4. Come Spostare in modo casuale dei Simboli Numerati in Excel
    Di A.Maurizio nel forum Domande su Excel VBA e MACRO
    Risposte: 6
    Ultimo Messaggio: 11/10/15, 17:43
  5. Quesito sul calcolo condizionato
    Di M@urizio nel forum Domande su Excel in generale
    Risposte: 5
    Ultimo Messaggio: 27/09/15, 23:11

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
  •