Waarom moet er B uitkomen? Omdat A3=C2? Ik volg je logica niet.quote:Op woensdag 28 november 2012 16:35 schreef draadstalig het volgende:
[..]
[ code verwijderd ]
`
Korte toelichting. Bij 10 euro huidig en A t.m D hebben geen prijs geeft hij alsnog A aan, en niet B. Formule is momenteel zo opgesteld: =ALS(L8<MAX($F8);INDEX($H$6:$K$6;VERGELIJKEN(L8;H8:L8;0));"Current")
=A1*indirect("Z"&A1)quote:Op vrijdag 30 november 2012 10:37 schreef xyntarsus het volgende:
Goeiemorgen allemaal,
ik heb een (denk ik) vrij simpele vraag, maar ik kom er even niet uit.
ik heb een variabele (7 mogelijkheden) en per mogelijkheid moet de variabele met de waarde uit een cel vermenigvuldigd worden.
Ik kan dit wel in een "als" functie stoppen, maar dat wordt zo onoverzichtelijk.
(als(A1="1";A1*Z1;(als(A1="2";A1*Z2;(als.....)
Kunnen jullie me op weg helpen met een macro'tje hiervoor?
Alvast bedankt
je omshcrijving is niet helemaal duidelijk maar kan het zijn dat de waarde die niet gevonden wordt misschien net iets anders geschreven wordt in de regel waar je hem zou willen vinden?quote:Op donderdag 29 november 2012 10:28 schreef marcb1974 het volgende:
Ik moet een grote zoekactie houden in excel. Omdat dit met 2 voorwaarden moet viel verticaal zoeken af en gebruik ik nu index met vergelijken. Hiermee gaat het zoeken goed.
Echter stopt hij op een bepaald moment en vindt dan niets meer. De waarde die een regel eerder nog gevonden werd is dan ineens niet meer te vinden, aan het eind van het bestand ziet hij ze dan wel weer. Iemand enig idee hoe dat kan? Het is nu een bestand van ruim 16.000 regels, maar dat gaan er meer worden.
Ik werk in excel 2007.
AHA! Dan heb je vert.zoeken nodigquote:Op vrijdag 30 november 2012 11:30 schreef xyntarsus het volgende:
die begrijp ik niet helemaal, wellicht ook dat ik mijn voorbeeld achteraf gezien verkeerd geformuleerd heb.
de waardes die ik in een cel invul (niet persé A1 dus) zijn vooraf vastgestelde lengtes
(600-900-1250-1600-1800-2400-3000) en hier moet uit een andere cel een prijs aangehangen worden.
(die weer uit een extern bestand komt)
das wat ik eigenlijk probeer te maken is iets dat kijkt welke lengte er ingevoerd is, vervolgens in een lijstje kijkt welke prijs erbij hoort en tot slot vermenigvuldigd met een in een andere cel vaststaand (niet variabel) aantal
ja hoor een pulldown menu is ook maar gewoon een getalquote:Op vrijdag 30 november 2012 11:46 schreef xyntarsus het volgende:
thx dit lijkt het idd te zijn.
werkt dit overigens ook met een pulldown menu?
(dan kan ik voorkomen dat mensen de verkeerde waarde invullen)
1 | [ss].000 |
De waarden zijn allemaal gelijk, komen uit 1 bestand. Er staan geen spaties voor of achter, geen afrondingen, het zijn verrichtingscodes.quote:Op vrijdag 30 november 2012 11:32 schreef Deetch het volgende:
[..]
je omshcrijving is niet helemaal duidelijk maar kan het zijn dat de waarde die niet gevonden wordt misschien net iets anders geschreven wordt in de regel waar je hem zou willen vinden?
Misschien staat er stiekem een spatie voor of achter?
Is het getal afgerond?
Kun je een voorbeeld geven van je functie en waarop het dan mis gaat?
Kan het zijn dat het mis gaat in de ALS functie?quote:Op maandag 3 december 2012 09:23 schreef marcb1974 het volgende:
[..]
De waarden zijn allemaal gelijk, komen uit 1 bestand. Er staan geen spaties voor of achter, geen afrondingen, het zijn verrichtingscodes.
De functie is: {=INDEX('DBC Services'!C:C;VERGELIJKEN(Factuur!B6994;ALS('DBC Services'!B:B=Factuur!C6994;'DBC Services'!A:A);0))}
Dan zou het atlijd fout moeten gaan. En nu gaat het maar voor een deel fout. Dat is het deel waar ik dus tegenaan blijf lopen.quote:Op maandag 3 december 2012 09:42 schreef Deetch het volgende:
[..]
Kan het zijn dat het mis gaat in de ALS functie?
Als namelijk de voorwaarde niet klopt dan heb je geen array om de waarde van vergelijken in te zoeken waardoor je geen rijnummer hebt voor je INDEX functie.
Het gaat alleen fout als Factuur!C6994 niet in 'DBC Services'!B:B zou staan of als Factuur!B6994 niet in 'DBC Services'!A:A staatquote:Op maandag 3 december 2012 09:43 schreef marcb1974 het volgende:
[..]
Dan zou het atlijd fout moeten gaan. En nu gaat het maar voor een deel fout. Dat is het deel waar ik dus tegenaan blijf lopen.
Het is een bestand dat bestaat uit veel zich herhalende waarden. Zowel in A:A als B:B. De kans dat een waarde niet voorkomt in 'DBC Services' is hierdoor klein. Van de waarden die inderdaad niet voorkomen weten we welke dat zijn en verwachten we ook een #N/B.quote:Op maandag 3 december 2012 09:49 schreef Deetch het volgende:
[..]
Het gaat alleen fout als Factuur!C6994 niet in 'DBC Services'!B:B zou staan of als Factuur!B6994 niet in 'DBC Services'!A:A staat
Soms helpt het om de functie uit te splitsen om te zien welk deel verkeerd lopt. Dus eerst een kolom met de ALS-functie, dan de VERGELIJKEN en dan de INDEX.
Wat gebeurt er als je de spreadsheet opnieuw opbouwt vanuit een lege spreadsheet?quote:Op maandag 3 december 2012 10:11 schreef marcb1974 het volgende:
[..]
Het is een bestand dat bestaat uit veel zich herhalende waarden. Zowel in A:A als B:B. De kans dat een waarde niet voorkomt in 'DBC Services' is hierdoor klein. Van de waarden die inderdaad niet voorkomen weten we welke dat zijn en verwachten we ook een #N/B.
Het probleem zit hem echt erin dat hij een deel (van rij 6980 tm 14664) altijd als #N/B geeft. Een heel aantal van de waarden uit die range is handmatig opgezocht en staat er netjes in. Zonder spaties, afronden, etc.
Ik zoek echt naar het rare, in de formule opzich zit, voor zover wij hier weten, niets fout.
1 2 3 4 5 6 7 | Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Range("IN1") = Range("IN1") + 0.1 End Sub Private Sub Save_File() ActiveWorkbook.SaveAs "C:\Users\Sven\School\Hoofdfase\Afstuderen\Planning\Planning Afstuderen - " & Format(Date, "dd-mm-yyyy") & ".xlsm" End Sub |
Ik ga het eens proberenquote:Op maandag 3 december 2012 12:06 schreef Deetch het volgende:
[..]
Wat gebeurt er als je de spreadsheet opnieuw opbouwt vanuit een lege spreadsheet?
Dus alle "kale" data (alles wat puur getal of tekst zou moeten zijn en geen resultaat van formules) kopieren en dan plakken speciaal als waarden en vervolgens de kolommen met formules opnieuw maken?
syntax:quote:Op maandag 3 december 2012 12:31 schreef qu63 het volgende:
Wat is er niet goed aan deze VBA-code?
[ code verwijderd ]
Ik wil dat iedere keer dat ik bestand opsla cel IN1 met 0,1 verhoogd wordt (het versienummer) en dat het bestand daarna (ook) opgeslagen wordt in "C:\Users\Sven\School\Hoofdfase\Afstuderen\Planning\" als "Planning Afstuderen - 03-12-2012.xlsm" in dit geval.
1 | Range("IN1").value = Range("IN1").value + 0.1 |
Dat stuk code werkt juist probleemloos op de manier zoals het in mijn post staat, het tweede deel doet t nietquote:Op maandag 3 december 2012 16:29 schreef Deetch het volgende:
[..]
syntax:
range("IN1") betekent een cel adres
range("IN1").value betekent de waarde van de cel met adres IN1
je code moet dus worden:
[ code verwijderd ]
Waar roep je de sub aan dan?quote:Op maandag 3 december 2012 17:49 schreef qu63 het volgende:
[..]
Dat stuk code werkt juist probleemloos op de manier zoals het in mijn post staat, het tweede deel doet t niet
Forum Opties | |
---|---|
Forumhop: | |
Hop naar: |