Adattare funzioni s...
 
Notifiche
Cancella tutti

La consultazione del forum è libera per tutti.

Per poter porre un quesito è invece necessario essere un utente registrato (clicca qui se non lo sei).

Tutti gli utenti che richiedono un supporto, come da REGOLAMENTO, sono caldamente invitati ad allegare un file di esempio con l'indicazione di quello che si desidera ottenere.

Adattare funzioni scritte in excel 365 ad excel 2016

18 Post
3 Utenti
0 Reactions
161 Visualizzazioni
Forum 1
(@ciamic)
Post: 0
New Member
Avviatore di Topic
 

Ho questa pezzo di formula: _xlfn._xlws.FILTER(E$3:E3;B$3:B3=B4) originariamente scitta in excel 365. Avendo excel 2016 come la posso scrivere utilizzando altre funzioni compatibili con exceò 2016 tipo Indie e confronta? Grazie per la risposta.

 

Versione di Excel
Sistema operativo
 
Postato : 09/11/2024 15:24
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

se non erro è un AGGREGA()

=INDICE($E3:E3;AGGREGA(15;6;RIF.RIGA($E$1:E1)/($B$3:B3=B4);1))

ma se non vedo il file vado a intuito

 

 
Postato : 09/11/2024 16:49
Forum 1
(@ciamic)
Post: 0
New Member
Avviatore di Topic
 

@gianfranco55 Grazie per avermi risposto. Ti allego il file che mi hai richiesto. La formula da adattare l'ho messa nella cella cella K4 da trascinare in basso. I risultati attesi sono quelli della colonna J. Cioè le celle di J4:J42.

Naturalmente anche nelle colonne seguenti ci sono formule di 365 da adattare al 2016. Ma cominciamo con questa prima e poi step by step si continua. Qui c'è la funzione Filter che nel 2016 non esiste affatto.

 
Postato : 10/11/2024 00:42
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

forse ho capito ma per sicurezza

scrivimi la formula che hai nel 365 senza gli errori

 
Postato : 10/11/2024 10:41
Forum 1
(@ciamic)
Post: 0
New Member
Avviatore di Topic
 

@gianfranco55 ciao ...Io ho il 2016 non ho il 365 ... questo è il file che mi hanno passato ed io piano piano sto cercando di farlo funzionare nel mio 2016. Grazie per il supporto

 
Postato : 10/11/2024 11:11
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

spiegami cosa devi fare perchè mi sembra che la formula ci sia

e sia solo da integrare (io quel file li l'ho già visto)

mi sembra questa faccia lo stesso

=SE(C4<=0;"";B4&CONTA.PIÙ.SE(B$4:B4;B4;C$4:C4;">0"))

 

l'originale mi sembra sia

=SE.ERRORE(SE(C4<0;INDICE(FILTRO(E$3:E3;B$3:B3=B4);1 + SE.ERRORE(CERCA.X(VERO;(FILTRO(G$3:G3;B$3:B3=B4)<=G4);0;-1);SE(G4=0;"";0)));SE(C4>0;E4;""));"")

 
Postato : 10/11/2024 11:15
Forum 1
(@ciamic)
Post: 0
New Member
Avviatore di Topic
 

@gianfranco55 si questo è un file scaricato dal canale di Poletti. A me serve per determinare li valore delle plusvalenze generate da compravendite di valori mobiliari con il metodo LIFO. In prtica devo fare un file che mi costruisca poi il modello RT della dichiarazione dei redditi. Se ti serve il file e lo posso postare integralmente dimmi pure

 
Postato : 10/11/2024 11:37
Forum 1
(@ciamic)
Post: 0
New Member
Avviatore di Topic
 

Postato da: @gianfranco55

=SE.ERRORE(SE(C4<0;INDICE(FILTRO(E$3:E3;B$3:B3=B4);1 + SE.ERRORE(CERCA.X(VERO;(FILTRO(G$3:G3;B$3:B3=B4)<=G4);0;-1);SE(G4=0;"";0)));SE(C4>0;E4;""));"")

si questo è quello originario in 365 devo cercare di trovare funzioni che fanno la stessa cosa ma compatibili con 2016 poichè quest'ultimo non ha nè la funzione Filtro ne la funzione Cerca.X. 

=SE(C4<=0;"";B4&CONTA.PIÙ.SE(B$4:B4;B4;C$4:C4;">0"))

questa fa la stessa cosa più o meno ma in questa colonna servono anche per le vendite che la formula sopra esclude. 

 

Ti ringrazio per il supporto.

 
Postato : 10/11/2024 11:41
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ok capito

primo pomeriggio cerco di trovarti la soluzione

 
Postato : 10/11/2024 11:45
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

prova questa

=SE(C4<=0;INDICE($E$3:E3;INDICE(MIN(SE(($G$3:G3>=$G4)*($B$3:B3=$B4);RIF.RIGA($A$1:A1)));;));B4&CONTA.PIÙ.SE(B$4:B4;B4;C$4:C4;">0"))

 
Postato : 10/11/2024 16:15
Forum 1
(@ciamic)
Post: 0
New Member
Avviatore di Topic
 

@gianfranco55 Wow funziona alla grande! Ho provato a fare da solo con le altre colonne del foglio ma incontro ancora delle difficoltà per esempio nella colonna K che serve a determinare le quantità deve ottenere questi valori

4
1
2
3
2
3
6
6
0
3
3
2
1
3
45
1
2
10
1
2
6
6
1
3
2
3
41
2
2
4
3
41
1
2
4

e la formula è questa in 365 

=SE(J4<>"";_xlfn.XLOOKUP(J4;J$3:J3;G$3:G3;C4-SOMMA.SE(J5:J999;J4;K5:K999)+G4;0;-1)-G4;"")

Come la posso modificare per excel 2016?

Mi puoi dare uno sguardo o devo fare un'altro post?

 
Postato : 10/11/2024 17:59
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

lascialo qui la prossima formula fai un' altro post

guarda che a me i conti non tornano per via delle date

stai sommando le date sotto e non quelle sopra ora vedo meglio

 
Postato : 10/11/2024 18:32
gianfranco55
(@gianfranco55)
Post: 1797
Moderatore
 

ciao

più ci provo e più sono convinto che non vada bene

esempio

se in data

30/03/2021 mi entrano 3 mele

come fai a dire che ne rimangono 1

visto che il prelievo di 2 mele è in data

06/06/2022

e anche qui sarà 1 la rimanenza non 2

3-2 =1

 
Postato : 10/11/2024 20:40
Forum 1
(@ciamic)
Post: 0
New Member
Avviatore di Topic
 

@gianfranco55 osservazione giusta. Il ragionamento è il seguente: In data 30/03/2021 entrano 3 mele, successivamente in data 6/6/2022 vengono vendute (mangiate) due mele e queste due mele dove sono state prese? Si va a vedere l'acquisto fatto immediatamente precedente. Infatti l'acquisto più vicino è quello risalente alla data 30/03/2021, per cui 3-2=1. 1 mela rappresenta la rimanenze di mele dopo la vendita più vicina ed acquistate in data 30/03/2021. Questo in altre parole è il metodo LIFO: First in First out. Cioè la prima quantità che viene venduta è quella Acquistata più di recente e cioè con data più prossima alla data della vendita. Spero di essermi spiegato. 

 

Inoltre per la richiesta successiva fatta

Postato da: @ciamic

=SE(J4<>"";_xlfn.XLOOKUP(J4;J$3:J3;G$3:G3;C4-SOMMA.SE(J5:J999;J4;K5:K999)+G4;0;-1)-G4;"")

Ho provato ha tradurla in Excel 2016 in questo modo. 

 

=SE(J4<>"";SE.ERRORE(INDICE(G$4:G4;CONFRONTA(J4;J$3:J3;0));C4-SOMMA.SE(J5:J999;J4;K5:K999)+G4)-G4;"")

Ma alcuni risultati sono errati ed altri corretti. Perchè non rieso a trovare un metodo per far iniziare il confronto nell'intervallo dal più recente al meno recente (ordine inverso a quello solito che inizia dall'alto verso il basso). Infatti in questo caso la verifica serve dal basso verso l'alto

 
Postato : 10/11/2024 20:53
Marius44
(@marius44)
Post: 0
Moderatore
 

Ciao

Non confondiamo. Il sistema che stai usando è FIFO (Fisrt In First Out) non LIFO (Last In First Out)

 

Ciao,

Mario

 
Postato : 10/11/2024 21:56
Pagina 1 / 2
Condividi:
My Agile Privacy
Questo sito utilizza cookie tecnici e di profilazione. Cliccando su accetta si autorizzano tutti i cookie di profilazione. Cliccando su rifiuta o la X si rifiutano tutti i cookie di profilazione. Cliccando su personalizza è possibile selezionare quali cookie di profilazione attivare.
Attenzione: alcune funzionalità di questa pagina potrebbero essere bloccate a seguito delle tue scelte privacy
     Scarica il nostro ebook gratuito     

Unisciti a oltre 35.000 professionisti
che hanno già scelto di semplificare il proprio lavoro
e aumentare la produttività con la nostra newsletter!

Scarica l’ebook con i
migliori trucchi e suggerimenti per Excel
selezionati per te da Excel Academy

Download