Come scrivere una funzione IF in Excel che esegue un calcolo basato su 3 argomenti?


0

Ho una tabella con tre tipi di clienti: GOV, NProfit e COM, contenuti nella colonna B. Ciascuno di questi riceve un tasso di fatturazione diverso, rispettivamente 1,50, 2 e 3, che deve essere applicato alle unità fatturate nella colonna G.

Devo scrivere una funzione nella colonna H che legge il tipo di cliente nella colonna B e applica la tariffa appropriata per il tipo di cliente alle unità fatturate nella colonna G, dandomi la fattura totale nella colonna H.

Risposte:


4

Sebbene allettanti a prima vista, le funzioni nidificate IF () non sono il modo migliore per gestire questo scenario.

Per facilità di manutenzione, consiglio vivamente di creare una tabella separata con i tre tipi di clienti e le rispettive tariffe di fatturazione. Una semplice tabella con due colonne farà. La colonna A è il tipo di cliente, la colonna B è la tariffa di fatturazione.

Quindi è possibile utilizzare un VLookup per ottenere la tariffa di fatturazione per il tipo di cliente.

Il vantaggio di questo approccio è che se la tariffa di fatturazione cambia, non dovrai cambiare tutte le celle con istruzioni IF annidate come suggerito sopra. Devi solo modificare la tariffa di fatturazione nella tabella di ricerca.

Posizionare la tabella di ricerca in un nuovo foglio chiamato, dire "Ricerca". La riga 1 è etichette. A1 è di tipo Cliente, B1 è Tasso.

Nella tua scheda tecnica originale puoi utilizzare un Vlookup come questo

=VLOOKUP(A1,Lookup!$A$1:$B$4,2,FALSE)

Questa ricerca presuppone che il tipo di cliente sia nella cella A1 sul foglio corrente. Si prega di adattarsi al proprio scenario. Inoltre, puoi annidare Vlookup in un altro calcolo. Ad esempio, se si desidera eseguire un calcolo che coinvolge il tasso di fatturazione, è possibile eseguire un'operazione simile

=B1*VLOOKUP(A1,Lookup!$A$1:$B$4,2,FALSE)

dove A1 del foglio corrente è il tipo di cliente e B1 del foglio corrente è il valore che si desidera moltiplicare con il tasso di fatturazione del rispettivo tipo di cliente.

Se i tuoi dati potrebbero non avere sempre un tipo di cliente, potresti voler utilizzare un trapping di errori per i dati senza un tipo di cliente. Normalmente, la formula restituisce un messaggio di errore. Se si avvolge la formula in un'istruzione IFError (), è possibile contrassegnare questi, come

=IFERROR(B1*VLOOKUP(A1,Lookup!$A$1:$B$4,2,FALSE),"Please check data!")

Però ho solo una colonna per tutti quei diversi argomenti. Ciò significa che devo inserire più funzioni VLOOKUP?
Chad Pranke,

Non sono sicuro di aver capito. Puoi spiegare "una colonna"?
teylyn,

1

Ti riferisci a qualcosa del genere?

= IF (B1 = 1, "cliente1", IF (B1 = 2, "cliente2", IF (B1 = 3, "cliente3", "opzione non valida")))

Sostituisci 1, 2, 3 con il valore reale che stai "testando" e "cliente1", "cliente2", "cliente3" con quello che vuoi che sia l'output

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.