• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

IF en and formule versimpelen tot één cel

Status
Niet open voor verdere reacties.

Azoura

Gebruiker
Lid geworden
18 mei 2017
Berichten
30
Goedemiddag,

Ik stoei al een tijdje met de volgende vraag.

Ik verzamel in een bestand informatie over een drie standaarden, hiervan haal ik de standaard waarde en de werkelijk gemeten waarde uit het systeem. Deze twee gebruik ik om een delta te berekenen (standaard - werkelijke waarde). De drie delta's wil ik toetsen. Als één of meerdere van de delta's buiten de genoemde specificaties ligt dan moet de kolom terugkomen met een "niet OK". Als de drie delta's allemaal binnen de specificaties ligt dan moet de kolom terugkomen met een "OK"

Op dit moment heb ik dit gesimuleerd door het volgende:

Kollom J K en L staat een simpele berekening om de delta te krijgen (dus: J=D - G, K= E-H en L= F-I). In de kolommen M, N en O maak ik gebruik van de volgende formule:

=IF(J1<-2,5;"No";IF(J1>2,5;"No";"Yes"))

Dit heeft voor elke individuele parameter nu een Yes of No. Kollom P gebruik ik om dit samen te vatten doormiddel van de formule:

=IF(AND(M2="Yes";N2="Yes";O2="Yes");"OK";"Niet OK")

Volgens mij moet het lukken om beide berekingen in 1 kolom te krijgen. Kunnen jullie mij hiermee helpen?

Nog een stapje verder: Stel je voor dat er enkele specifieke recepten zijn met andere grenswaarde (dus bijvoorbeeld -4,5 en +4,5) kan ik deze uitzonderingen in de formule standaard meenemen?

Bijv: De formule kijkt of het recept BANAAN is en weet in dat geval dat bananen dus tussen de -4,5 en +4,5 mag liggen, maar als het een appel betreft neemt hij gewoon -2,2/+2,5. Oftewijl het toevoegen van enkele uitzonderingen die je dus niet meer handmatig hoeft te doen waardoor de formule verbroken wordt.

In de bijlage vinden jullie een voorbeeld bestand, de gegevens zijn gefingeerd maar doen niet af aan de calculatie.

Alvast heel erg bedankt.
Mochten er nog vragen zijn dan hoor ik dit graag!
 

Bijlagen

  • Voorbeeld1.xlsx
    11,3 KB · Weergaven: 36
Laatst bewerkt:
Super! Heel erg bedankt!


Ik zie dat het in dit bestand zelfs is gelukt om zes kolommen te verwijderen. Het is voor het menselijke oog echter wel fijn om toch de kolommen J K en L te kunnen blijven zien. Dit zodat je makkelijk kan zien hoevéél de gemeten waarde afwijkt van de standaard waarde. Maar deze hoeft natuurlijk niet gekoppelt te zijn aan de formule K, maar kan ik gewoon weer apart toevoegen.

Ik zie dat ik (ipv handmatige invoer) het recept en grenswaarde aan elkaar kan koppelen doormiddel van een Vlookup. Hierbij wordt aangenomen dat de grenswaarde voor alle drie de standaarden hetzelfde zullen zijn. Het komt echter wel eens voor dat maar één of twee parameters een andere standaard heeft.

Bijv.
L en C: 2,5 en H 8,5.

Los ik dit op door toch drie kolommen met de drie standaarden toe te voegen en deze vervolgens in de formule toe te passen?

Dan krijg je:

kollom D E en F met een =Vlookup(Banaan;Sheet2!A;D;(nr. van kollom met grenswaarde 1,2 of 3);False)

Die je koppelt in de ID ok? kollom doormiddel van:

=IF(OR([@Lw]-[@[std Lw]]<-[@Grenswaarde1];[@Lw]-[@[std Lw]]>[@Grenswaarde1];[@Cw]-[@[std Cw]]<-[@Grenswaarde2];[@Cw]-[@[std Cw]]>[@Grenswaarde2];[@Hw]-[@[std Hw]]<-[@Grenswaarde3];[@Hw]-[@[std Hw]]>[@Grenswaarde3]);"Niet OK";"OK")
 
Ik begrijp niet helemaal wat je bedoelt met betrekking tot de vraag over de grenswaarde. Ik zie ook verwijzingen in je uitleg naar een ander tabblad die in het geposte document niet aanwezig is!
Bekijk bijlage Voorbeeld1 (gijs).xlsx Hier heb ik de kolommen weer terug geplaatst. (en de grenswaarde even apart gezet)
 
ik had dit weekend geen toegang tot mijn documenten, daarvoor excuses. Helaas ontdek ik ook dat ik via mijn werkplek geen voorbeeldbestanden meer kan uploaden. Ik ga even kijken of ik het via een andere manier toch voor elkaar krijg!
 
@Gijs

in K2:
PHP:
=RIGHT("Niet OK";2+5*(INT((H2-(E2-D2))/5)+INT((I2-(F2-D2))/5)+INT((J2-(G2-D2))/5)<>0))
 
Laatst bewerkt:
Toch via thuis het bestand uploaden.

In het volgende voorbeeld is duidelijker wat ik bedoel.
Ik heb een lijst toegevoegd onder de sheet "pivot". Hierin staan per type de grenswaarde. Zoals jullie kunnen zien zijn de grenswaarde niet altijd allemaal 2,5. Dit heb ik nu in de sheet 'data" verwerkt/opgelost door kolom D, E en F toe te voegen en hier vervolgens in de formule van kolom P naar te verwijzen.

Is er een mogelijkheid om in kolom P een formule toe te voegen die toetst om welk type het gaat en welke grenswaardes hier bij horen?

Kan er in deze formule ook iets ingebouwd worden wat er voor zorgt dat de formule niet uitgevoerd wordt als een van de cellen J, k of L leeg is, en er dan dus niet meer automatisch een "niet ok/ok wordt berekend in dat geval.

Alvast bedankt
 

Bijlagen

  • Voorbeeld_2.xlsx
    13,2 KB · Weergaven: 32
Super bedankt! De allereerste formule die Gijsbert gaf vind ik goed te begrijpen, bij deze formule heb ik echter wat moeite om hem te begrijpen. Hij lijkt ook niet helemaal goed te werken, maar weet zelf de fout er dus niet uit te halen.
=IF(COUNTIF(Table1[@[DeltaL]:[DeltaH]];"")=0
Controlleerd of er waardes staan in kolom J t/m L, zo niet, dan blijft kolom M leeg.
Waarom staat hier ook nog een =0?

;RIGHT("Niet OK";2+5*(
Dit gedeelte neemt de letters OK, wat is de functie van de +5* ?
INT(([@Lw]-([@[std Lw]]-VLOOKUP([@Recept];recept!A:B;2;FALSE)))/5)
Trekt lw en std lw en de standaardwaarde volgens het recept van elkaar af en deelt dit door vijf. Dit getal wordt geintergeerd dus 4,9 = 4 en -10,8 = 11.
Waarom wordt dit gedaan?
+INT(([@Cw]-([@[std Cw]]-VLOOKUP([@Recept];recept!A:C;3;FALSE)))/5)
Zelfde stap, maar voor creteria 2
+INT(([@Hw]-([@[std Hw]]-VLOOKUP([@Recept];recept!A:D;4;FALSE)))/5)
Zelfde stap, maar voor creteria 3
<>0));"")
Geen idee wat dit doet.

Als ik er meer recepten en metingen aan toe voeg dan geeft hij geregeld onterecht een 'niet ok' voorbeeld file kan ik vanavond uploaden.
 
Vraag1
Code:
IF(COUNTIF(Table1[@[DeltaL]:[DeltaH]];"")=0
Dit betekent: als het aantal cellen wat "" bevat in dit bereik 0 is.
Dus als er inderdaad geen lege cellen in staan dan klopt het criterium, waarna de formule volgt in het [waarde-als-waar] deel.

Vraag 2
De rest van de formule is een methode van snb uit de categorie; Omdenken!
Het is een stuk korter dan mijn variant en daarom was ik hiermee verder gegaan.
De uitleg laat ik dan ook aan de auteur over! :D

Maar ik zie verder geen verschillen met de uitkomst van beide methodieken.
Heb het even naast elkaar gelegd: Bekijk bijlage Voorbeeld_2_snb_vs_gijs.xlsx
Probeer het anders zelf met "Evaluate Formula" onder het tabje "Formulas" te evalueren. ;)

Succes :thumb:
 
Dat laatste voorbeeld gaf de doorslag naar mijn antwoord! Ik heb ervoor gekozen de formule van Gijs aan te houden, omdat ik deze zelf ook snap. Daaraan de Countif in het geval van lege waardes toegevoegd, nu doet de formule alles wat ik wil! Ik ben zo blij als een klein kind!!!

Heel erg bedankt! Zodra een formule eenmaal op papier staat kan ik er een hoop mee, maar ik loop vaak te klooien hoe je dingen moet noteren in de formule bar. Het toevoegen van de countif had ik zelf ook al geprobeerd maar was gelijk met de OR begonnen zonder de IF te herhalen.

M'n dag is helemaal goed!
 
Code:
M'n dag is helemaal goed!
En dat met die hitte :p :cool::cool:

Vergeet niet je vraag op opgelost te zetten!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan