Stellar Blade Un'esclusiva PS5 che sta facendo discutere per l'eccessiva bellezza della protagonista. Vieni a parlarne su Award & Oscar!

Excel Forum Per condividere esperienze su Microsoft Excel

Riferimento a dati precedenti di un database

  • Messaggi
  • OFFLINE
    Anthony D'Acunto
    Post: 169
    Registrato il: 24/07/2013
    Città: SALERNO
    Età: 52
    Utente Junior
    Excel LTSC 2021
    00 19/04/2024 15:00
    Buon pomeriggio a tutti gli utenti del Forum.

    PREMESSA:

    Il quesito che pongo oggi riguarda, nel file allegato, una lista inerente:
    - la vendita di prodotti (inseriti in Colonna 'E')...
    - a clienti (inseriti in Colonna 'H')...
    - in date (inserite in colonna 'F')...
    - relative a documenti la cui tipologia è definita da diversi codici-documento 'FA' - 'F' - 'DDT' (inseriti in Colonna 'O')...
    - con annessa numerazione relativa SOLO alle fatture (inserita in Colonna 'P')

    L'inserimento dei dati suddetti è totalmente manuale
    Mentre in Colonna 'D' una formula restituisce l'associazione prodotto-cliente
    e in Colonna 'K' una formula restituisce l'associazione cliente-codice documento

    ESIGENZA 1:

    Quando vado ad aggiungere alla lista in immagine un prodotto già venduto allo stesso cliente in precedenza con codice 'FA'...

    Ad esempio:
    Nuova Vendita di 'PASTA' al cliente 'PLUTO' in data 20/04/2024 inserita in Riga '6471'
    (già venduta precedentemente al cliente 'PLUTO' sia in data 14/04/2024 rifer. Riga '6459' con documento 'FA' - numero 1
    sia in data 18/04/2024 rifer.Riga '6468' con documento 'FA' - numero 4)

    Vorrei che, nella Cella 'O6471', una formula mi restituisca il codice 'F'
    e, nella Cella 'P6471', una formula mi restituisca la numerazione ultima (quindi 4)


    IDEM nella successiva Vendita di 'PASTA' al cliente 'PLUTO' in data 22/04/2024 inserita in Riga '6473'

    Vorrei che, nella Cella 'O6473', una formula mi restituisca il codice 'F'
    e, nella Cella 'P6473', una formula mi restituisca la numerazione ultima (quindi, sempre 4)


    ESIGENZA 2

    Quando vado ad aggiungere alla lista un prodotto già venduto allo stesso cliente in precedenza SENZA i suddetti codici in 'Colonna O', oppure
    Quando vado ad aggiungere alla lista un prodotto mai venduto allo stesso cliente in precedenza

    Ad esempio:
    Nuova Vendita di 'VERDURA' al cliente 'PLUTO' in data 22/04/2024 inserita in Riga '6474'
    (già venduta precedentemente al cliente 'PLUTO' in data 15/04/2024 rifer. Riga '6463' con documento 'DDT' - senza numerazione)

    Vorrei che, nella Cella 'O6474', una formula mi restituisca il codice 'DDT'
    (in realtà è già presente nella cella 'O6474' una formula che me lo restituisce in base a diverse condizioni che, se possibile, vorrei integrare insieme alla eventuale soluzione suggerita in questa sede)

    Ringrazio anticipatamente coloro che esamineranno la mia richiesta
    Windows 10 - Excel LTSC
  • OFFLINE
    federico460
    Post: 3.373
    Registrato il: 10/10/2013
    Città: VICENZA
    Età: 69
    Utente Master
    365
    00 19/04/2024 18:03
    ciao
    se non ci dic1 che formula hai in colonna O
    non le formule non si fa niente
    devi passare al VBA
  • OFFLINE
    Anthony D'Acunto
    Post: 170
    Registrato il: 24/07/2013
    Città: SALERNO
    Età: 52
    Utente Junior
    Excel LTSC 2021
    00 19/04/2024 20:04
    Re:
    Ciao Federico, grazie per la risposta.

    OK, partiamo da riga 6471 (allego file di esempio aggiornato)

    Ho messo la formula in 'O6471'

    Precisamente: =SE(E(E6471<>"";AB6471<>0);PIÙ.SE(P6471=0;"DDT";P6471<>0;"F");"")


    che uso in parallelo alla formula MAX.PIÙ.SE in 'S6471' per ottenere il numero del documento.

    Precisamente: =MAX.PIÙ.SE(P$5154:P6471;D$5154:D6471;D6471)


    Ottenuto il numero del documento (4 in 'S6471), inserisco manualmente 4 in 'P6471' e la cella 'O6471' passa da 'DDT' ad 'F' come voluto

    E così per le righe successive.

    Ho provato a mettere la formula =MAX.PIÙ.SE(P$5154:P6471;D$5154:D6471;D6471) DIRETTAMENTE in 'P6471' ma, ovviamente, mi restituisce il riferimento circolare

    Diversamente: =MAX.PIÙ.SE(P$5154:P6470;D$5154:D6471;D6471) mi dà errore

    federico460, 19/04/2024 18:03:

    ciao
    se non ci dic1 che formula hai in colonna O
    non le formule non si fa niente
    devi passare al VBA




    Windows 10 - Excel LTSC