Come utilizzare un array come condizione in una formula COUNTIFS o SUMIFS

4

Questa domanda potrebbe essere difficile da seguire, quindi la dividerò con gli esempi

Dato che ho questa tabella di frutti troppo cari;

Item          Price
Apple         £0.80
Peach         £1
Pear          £1
Apple         £1.20
Banana        £1
Orange        £1
Orange        £1
Apple         £4

Quindi ho un'altra tabella usando la formula COUNTIFS e SUMIFS;

My Item       Count     Total Price
Apple         3         £6
Peach         1         £1
Pear          1         £1
Banana        1         £1
Orange        2         £2

La formula utilizzata nella seconda tabella è;

  • Conteggio : COUNTIFS(Item,"*" & A2 & "*")
  • Prezzo totale : ABS(SUMIFS(FirstTable::Price,Item,"*" & A2 & "*"))

dove "Articolo" fa riferimento alla prima tabella (A2: A9), "Prezzo" (B2: B9) e "A2" fa riferimento a quella particolare riga nella seconda tabella (A2: A5).

Come puoi vedere, Count conta semplicemente il numero di volte che "Apple" appare nella tabella. Nel mio utilizzo (non frutti deliziosi), eseguo una ricerca con caratteri jolly prima e dopo la stringa, quindi in questo esempio "Ananas" verrebbe contato con "Apple". Il Total Price calcola il totale "Prezzo" dei frutti in cui il nome "Articolo" contiene la stringa in A2 (sempre con caratteri jolly).

Tuttavia, la prima tabella non è più una lista di frutta, immagina che siano migliaia di oggetti acquistati da un negozio. Quindi tra tutti i nomi di frutta ci sono verdure, carne e altri cibi.

Esiste un modo per utilizzare un array in cui abbiamo precedentemente utilizzato "A2"?

Quindi ora abbiamo una tabella chiamata config che è la seguente:

Fruits        Veg           Meat
Apple         Pepper        Pork
Peach         Carrot        Beef
Pear          Onion         Chicken
Orange        Mushroom      Fish                      

Quindi ora la nostra nuova tabella, piuttosto che riassumere ogni singolo frutto sarà;

My Item       Count     Total Price
Fruit         7         £10
Veg           0         £0
Meat          0         £0

Quindi la formula per COUNTIFS sarebbe qualcosa come (in pseudo) COUNTIFS(Item,"*" & array di config :: Fruits & "*") .

Sono consapevole che è possibile elencare ogni valore e condizione del test, ma ciò non è molto gestibile quando vengono aggiunti nuovi articoli. Inoltre, avere tavoli separati per frutta, verdura e carne non è una soluzione perfetta perché vorrei anche aggiungere una colonna per "altro", in cui è possibile riassumere tutti gli elementi che non sono già stati presi in considerazione in entrambi i frutti, verdura o carni.

Quindi sostanzialmente vorrei che un utente possa aggiungere "Banana" alla tabella config (che è stata intenzionalmente omessa), e la tabella di riepilogo aggiornerà i frutti per mostrare un conteggio di 8 e un prezzo totale di £ 11. .. senza dover modificare alcuna formula. Spero che tutto abbia un senso e apprezzo qualsiasi commento o aiuto - non sono nemmeno sicuro che esista una soluzione ideale.

    
posta Patrick 01.09.2014 - 14:22
fonte

0 risposte

Leggi altre domande sui tag