Excel-kaava: Solu on yhtä monista asioista -

Sisällysluettelo

Yleinen kaava

=SUMPRODUCT(--(A1=things))>0

Yhteenveto

Jos haluat testata solun nähdäksesi, onko se yhtä monista asioista, voit tehdä sen kaavalla, joka käyttää SUMPRODUCT-funktiota.

Asiayhteys

Oletetaan, että sinulla on luettelo tekstimerkkijonoja alueella B5: B11, ja haluat testata kutakin solua toisen luettelon asioista alueella E5: E9. Toisin sanoen jokaisen solun kohdassa B5: B11 haluat tietää: tasaako tämä solu mitä tahansa kohdassa E5: E9 mainittua?

Voit aloittaa suuren kaavan rakentamisen sisäkkäisiin IF-lauseisiin, mutta SUMPRODUCT-pohjainen taulukko on yksinkertaisempi, puhtaampi lähestymistapa.

Ratkaisu

Ratkaisu on luoda kaava, joka testaa useita arvoja ja palauttaa luettelon TOSI / EPÄTOSI arvoista. Kun se on saatu, voimme käsitellä luetteloa (itse asiassa matriisi) SUMPRODUCT-sovelluksella.

Käyttämämme kaava näyttää tältä:

=SUMPRODUCT(--(B5=things))>0

Selitys

Avain on tämä katkelma:

--(B5=things)

joka yksinkertaisesti vertaa B5: n arvoa kaikkiin nimettyjen alueiden "asiat" arvoihin. Koska verrataan B5: tä matriisiin (ts. Nimettyyn alueeseen "asiat", E5: E11), tuloksena on joukko TOSI / EPÄTOSI-arvoja, kuten tämä:

(TOSI; FALSE; FALSE; FALSE; FALSE)

Jos taulukossa on jopa yksi TOSI, tiedämme, että B5 on yhtä kuin vähintään yksi asia luettelossa, joten pakottaaksemme TOSI / EPÄTOSI-arvot 1: ksi ja 0: ksi, käytämme kaksinkertaista negatiivista (-, jota kutsutaan myös kaksinkertaiseksi unary). Tämän pakon jälkeen meillä on tämä:

(1; 0; 0; 0; 0)

Käsittelemme tulosta nyt SUMPRODUCT-toiminnolla, joka lisää elementit matriisiin. Jos saamme tuloksen, joka ei ole nolla, meillä on vähintään yksi ottelu, joten käytämme> 1 pakottaaksemme joko TOSI tai EPÄTOSI lopputuloksen.

Koodatulla luettelolla

Ei ole vaatimusta, että käytät alueita luetteloasi asioista. Jos etsit vain pientä määrää asioita, voit käyttää taulukon muodossa olevaa luetteloa, jota kutsutaan taulukon vakiona. Esimerkiksi, jos etsit vain punaisia, sinisiä ja vihreitä värejä, voit käyttää ("punainen", "sininen", "vihreä") näin:

--(B5=("red","blue","green"))

Ylimääräisten tilojen käsittely

Jos testattavat solut sisältävät ylimääräistä tilaa, ne eivät sovi oikein. Jos haluat poistaa kaiken ylimääräisen tilan, voit muokata kaavaa käyttämään TRIM-toimintoa seuraavasti:

=SUMPRODUCT(--(TRIM(A1)=things))>0

Mielenkiintoisia artikkeleita...