Varastokirjanpidossa on A sarakkeessa Hylly 1,2,3... jne. B sarakkeessa on Tuote A,B,C... jne. C sarakkeessa on varastohinta €/kpl. Jokaisessa hyllyssä on samannimisiä tuotteita. Esim Helmikuussa hylly 1, tuote B:n hinta on muuttunut 4,50 --> 5,00. Pystyykö jollakin kaavalla ohjelmoimaan automaattisen tarkastuksen, että ohjelma vertaa tammikuun ja helmikuun jokaisen rivin tuotehintaa ja jos huomaa poikkeavuuden, niin merkkaa sen D-sarakkeeseen? Välttämättä rivit eivät ole samassa järjestyksessä eri kuukausien taulukossa. Rivejä on 350 kpl.
Esim. TAMMIKUU
A-sarake B-sarake C-sarake D-sarake
hylly tuote hinta
1 A 5,00
1 B 4,50
1 C 4,20
2 A 11,00
2 B 7,00
esim. HELMIKUU
A-sarake B-sarake C-sarake D-sarake
hylly tuote hinta
1 A 5,00
1 B 5,00 X
1 C 4,20
2 A 11,00
2 B 7,00
Esim. TAMMIKUU
A-sarake B-sarake C-sarake D-sarake
hylly tuote hinta
1 A 5,00
1 B 4,50
1 C 4,20
2 A 11,00
2 B 7,00
esim. HELMIKUU
A-sarake B-sarake C-sarake D-sarake
hylly tuote hinta
1 A 5,00
1 B 5,00 X
1 C 4,20
2 A 11,00
2 B 7,00
Vastaukset 33
Vanhimmat
pystyy
pystyy monellakin tavalla
Pystyy monellakin tavalla sssss
Monellakin tavalla pystyy cccc
Voiskos joku neuvoa, joka osaa tehdä tuon?
Laita passeli pro, niin ei tartte kysellä tyhmiä. Jos ei riitä rahnat, niin sittä ruutuvihko.
Onpas taas oikein fiksuja vastauksia tähänkin kysymykseen.
Juicea lainaten "ne jotka osaa tekee mitä vaan ja ne jotka ei rupeaa vittuilemaan"
Tyhmille voi vittuilla. Jo tehtävänannosta näkee ettei aloittajalla ole kaikki päivitykset eckselissä. Ei samalla tuotteella voi olla montaa eri hintaa eri hyllypaikoissa, jos niitä satunnaisesti sotketaan. Silloin pitää olla mukana vielä seuranta, eli jonkinlainen id-numero, joka pysyy tuote-erän mukana alusta loppuun.
Juicea lainaten sinä et näköjään osaa edes vittuilla.
Selvennykseksi, ettei hyllyt ole samassa varastossa vaan eri osoitteissa, jolloin samoillekin tuotteille muodostuu erilaisia hintoja eri paikoissa. Mutta kommenteista päätellen ei taida olla tämä ongelma ratkaistavissa Excelillä.
=SUMPRODUCT(Sheet1!A1:A5=A1;Sheet1!B1:B5=B1;Sheet1!C1:C5)=C1
Eikös tuolla lasketa painotettua keskiarvoa? Ei auta tähän ongelmaan.
Ei tuolla keskaria saa.
Mites toi kaava toimii tuossa tehtävässä? Mihin soluun tuo kaava sijoitetaan?
Sheet1 edustaa tammikuuta, joten seuraavan taulukon d-sarakkeeseen.
Eka välillehti on Tammikuu ja toinen Helmikuu. Oheinen kaava on Helmikuu taulukon D 1 solussa =TULOJEN.SUMMA(Tammikuu!A1:A4;Tammikuu!B1:B4;Tammikuu!C1:C4)=C1. Vastaus on epätosi.
Missä vaiheessa se vertaa Helmikuun lukuja tuossa kaavassa? Koska jos vaihtaa C sarakkeen hintaa, niin vastaus ei muutu.
Miten tuo hakualue esim. A1:A4 määritetään, koska A4 vaihtuu jo eri varastopaikka?
=TULOJEN.SUMMA(Tammikuu!A1:A4=A1;Tammikuu!B1:B4=B1;Tammikuu!C1:C4)=C1
Korjaa kaavasi.
=TULOJEN.SUMMA(Tammikuu!A$1:A$4=A1;Tammikuu!B$1:B$4=B1;Tammikuu!C$1:C$4)=C1
Minäkin korjasin omani.
Joku on taulukossani pielessä, koska kaikille riveille Helmikuu välilehdellä tulostuu EPÄTOSI, vaikka hinta on muutamalla riville eri kuin Tammikuu välilehdellä?
Toimiko kaava esimerkin kanssa?
Ei toimi. Kaavat ovat Helmikuu välilehden D -sarakkeeseessa ja siihen tulostuu EPÄTOSI joka riville vaikka hinta on esimerkin mukaisesti C 2 solussa eri kuin Tammikuu välilehden C 2 solussa.
Näin ainakin onnistuu. Alkuperäisen tarkoituksen mukaan D2 tulee "x".
Helmikuun D1= JOS(JA(A1=Tammikuu!A1);JOS(JA(B1=Tammikuu!B1);JOS(JA(C1=Tammikuu!C1);"";"x")))
JOS ja TULOJEN.SUMMA yhdistämällä:
=JOS(TULOJEN.SUMMA((Tammikuu!A1=A1)*(Tammikuu!B1=B1)*(Tammikuu!C1=C1));"";"x")
Hienoa! Kiitos! Nyt päästään asiaan.
Pitääkö vertailuaineiston olla keskenään samassa järjestyksessä?
Jos joku rivi on erijärjestyksessä esim. Tammikuun rivi 3 onkin Helmikuussa 5 rivillä, niin voiko hakualuetta laajentaa kattamaan vaikka rivit 1-10?
Tuolla kaavalla kyllä. Se vertaa vain annettua riviä. Mutta tällä ei tarvitse olla samassa järjestyksessä.
=JOS(TULOJEN.SUMMA((Tammikuu!$A$1:$A$5=A1)*(Tammikuu!$B$1:$B$5=B1)*(Tammikuu!$C$1:$C$5=C1));"";"X")
Toimi ainakin annetulla esimerkillä. Jos ei pelaa "tosielämässä", niin ilmoita.
Tuota "x" vastausta voi siis muuttaa mielensä mukaan. Sen ei tarvitse olla tuollainen. Voit vaikka siihen kaavan loppuosaan vaihtaa esim: ;"sama";"muuttunut").
Pelkkä "" jättää solun tyhjäksi. Lainausmerkkien väliin voi siis kirjoittaa mitä vain.
Sain kaavan pelaamaan tosielämässä. Kiitos tosipaljon avusta!!!
Vielä tuli yksi ongelma. Jos haluaisin hakea varastosaldon Tammikuu -välilehden N -sarakkeeseen Helmikuu -välilehden G -sarakkeesta. Millä kaavalla haku onnistuisi?
A ja B sarakkeen tiedot olisi hakutekijöinä. Rivit eivät ole eri kuukausien välillä samassa järjestyksessä.
Onkohan tämä nyt se mitä haet, mutta allaoleva kaava hakee Helmikuun G-sarakkeesta Hyllyn (A) /Tuotteen (B) vastaavan "varastosaldon". Eli Tammikuun N1 kaava:
=HAKU(2;1/((Helmikuu!$A$1:$A$5=A1)*(Helmikuu!$B$1:$B$5=B1));Helmikuu!$G$1:$G$5)
Eli kaava vertaa TammikuunA1 solun arvoa/Tammikuun B1 arvoa Helmikuun vastaavista ja antaa sille arvon G-sarakkeelta.
Kopioi kaava alaspäin. Toimi ainakin tuolla antamallasi esimerkillä, johon lisäsin Helmikuun G1:G5 "varastosaldo"-lukuja.
Kaava ei ole "omasta päästä" vaan löysin sen tuolta.
https://www.mrexcel.com/forum/excel-questions/306615-vlookup-multiple-criteria.html
Jep, toimii tosi hyvin! Kiitos paljon!
Saako kaavaan vielä lisäyksen, että #PUUTTUU! korvattaisiin tyhjällä.
Kaikilla riveillä ei ole varastosaldoa, niin antaa tuon #PUUTTUU!.
Tai siis #PUUTTUU! tulee siitä, että Helmikuu -välilehdellä ei ole enää kyseistä tuotetta ollenkaan.
=IFERROR( kaava_jonka_arvoksi_tulee_joskus_virhe; "")
Kuten tuossa edellä jo mainittiin, niin JOSVIRHE-funktio. Eli
=JOSVIRHE(HAKU(2;1/((Helmikuu!$A$1:$A$5=A1)*(Helmikuu!$B$1:$B$5=B1));Helmikuu!$G$1:$G$5);"")
Ja taas kuten tuolla edelläkin, voit laittaa lainausmerkkien väliin mitä vain, nyt näyttää tyhjää
Kiitos taas! Kaavat pelittää ja taulukko toimii kuten halusinkin!