• 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.

vert.zoeken geeft als resultaat: N#B

Status
Niet open voor verdere reacties.

arjoderoon

Gebruiker
Lid geworden
2 mei 2007
Berichten
476
vert.zoeken in meedere kolommen -> rare uitkomsten

Ik heb een hele lang lijst met artikelnummers waarvan ik automatisch de ean code wil laten opzoeken. Ik heb nu de formule als volgt:
Code:
=VERT.ZOEKEN(A135;dasset.csv!$A$2:$Y$14925;2;0)

hierbij is a135 de cel waarin het artikel nummer staat dat gebruikt moet worden als zoekwaarde. Dasset.csv is het bestand waarin gezocht moet worden. en het opgegeven bereik is het totale bereik van dat bestand dasset.csv. Naar mijn weten klopt de formule gewoon. De kolomindex 2 geeft aan dat de waarde van de 2e kolom gebruikt moet worden. Toch? Dit is kolom B, en daar staat inderdaad de EAN code die gebruikt moet worden. Ik heb al een andere vert.zoeken gebruikt die ook werkt in een andere werkmap. Maar deze wil niet. Maar waarom niet?
Ik kom er niet uit.
 
Laatst bewerkt:
Beste arjoderoon ;)

Ik vermoed dat Dasset.csv een tabblad is !
Kijk eens of de naam van het tabblad wel overeenkomt met de naam in de formule
Is hoofdletter gevoelig en kijk ook eens of er geen spatie svoor of achter staan :thumb:

Groetjes Danny :D
 
Beste arjoderoon,

Het kan zijn dat hetgeen je zoekt een getal is, en dat in de dataset het tekst is.
Heb je het bestand dataset.csv opgeslagen als Excelbestand?
Kopieer dan eens een lege cel, en selecteerdan de kolom met de getalen waarin je zoekt. Ga via Bewerken > Plakken Speciaal > Waarden + Optellen.
Kijk nu nog eens naar je formule.
Nog steeds de foutmelding? Kijk dan eens of de waarde die je zoekt wel voorkomt in het opzoekbereik.

Lukt het nog steeds neit, plaats dan eens het bestandje hier. Geanonimiseerd als het persoonlijke informatie bevat.

Richard
 
het bestand dasset.csv is er ook in .xls bestand. Maakt dit het verschil? bij het csv bestand heb ik zelf de celeigenschappen van de kolom met de ean codes moeten wijzigen in getal terwijl dit bij het .xls bestand al wel goed was. Nu ik het .xls bestand gebruik als verwijzing werkt de formule wel goed.
 
ik heb nu een verder gaande vraag die ik ook denk op te lossen met vert.zoeken gecombineerd met als. Ik heb geen idee of dit de juiste methode is. Ik heb nu het artikelnummer waarmee ik de juiste prijs erbij wil zoeken. Nu zijn er vier kolommen waar prijzen staan. De meest linkse kolom met een prijs erin moet gehanteerd worden (prijzen kunnen zowel in kolom 1 als 4 staan bijv.)

ik heb deze code:
Code:
=VERT.ZOEKEN(A135;'[dasset.xls]SQL Results'!$A$1:$Y$14901;
ALS(VERT.ZOEKEN(A135;'[dasset.xls]SQL Results'!$A$1:$Y$14901;20;0)="";
ALS(VERT.ZOEKEN(A135;'[dasset.xls]SQL Results'!$A$1:$Y$14901;21;0)="";
ALS(VERT.ZOEKEN(A135;'[dasset.xls]SQL Results'!$A$1:$Y$14901;22;0)="";
VERT.ZOEKEN(A135;'[dasset.xls]SQL Results'!$A$1:$Y$14901;23;0);20);21);22);0)

Maar nu is het me niet helemaal duidelijk.
Kolom index 20 is de eerste kolom waar een prijs staat en kolom 23 is de laatste. Door al die als formules ben ik het een beetje kwijt waar ik nog een waarde als waar of een waarde als onwaar in moet vullen.

Maar het kan wel op deze manier? Of hoe kan het beter?
Dus Als in kolom index 20 (T) geen prijs staat, moet gezocht worden in kolom index 21 (U), als daar niks staat in kolom index 22 (V) en als daar niks staat in kolom index 23(W).
 
Laatst bewerkt:
Ik heb zoiets ook al een keer gevraagd. Moet je even op deze site kijken, daar heb ik mijn oplossing gevonden. Weet alleen niet of het ook met verschillende bestanden werkt.
 
via de functie tekst naar kolommen heb ik nu bij een aantal cellen de juiste waarde te pakken. Maar bij andere cellen geeft hij een waarde die totaal niet bij 1 van de genoemde kolommen zit. Ik snap niet helemaal waar een verkeerde verwijzing zou kunnen zitten die de kolom aanpast als je hem doortrekt.

Code:
 =VERT.ZOEKEN(A147;'[dasset.xls]SQL Results'!$A$1:$Y$14901;
ALS(VERT.ZOEKEN(A147;'[dasset.xls]SQL Results'!$A$1:$Y$14901;20;0)="";
ALS(VERT.ZOEKEN(A147;'[dasset.xls]SQL Results'!$A$1:$Y$14901;21;0)="";
ALS(VERT.ZOEKEN(A147;'[dasset.xls]SQL Results'!$A$1:$Y$14901;22;0)="";
VERT.ZOEKEN(A147;'[dasset.xls]SQL Results'!$A$1:$Y$14901;23;0);22);21);20);0)

op deze manier wordt er toch alleen gezocht in de kolommen 20,21,22,23?
Want ik krijg nu in sommige cellen de waarden uit kolom 1, in andere cellen de waarde uit kolom 3 etc.
 
Een mini voorbeeldje (zonder persoonlijke data) zou wel leuk zijn, moet niet meer dan 1 zoekwaarde zijn in een 5-tal regels hoor :thumb:

Op die manier is het voor ons sneller duidelijk waar het probleem zit :D


PS : Ben je zeker dat de zoekwaarde altijd gaat voorkomen in jouw tabelmatrix ?
Zoniet ga je dit ook nog moeten opvangen in jouw formule, en dit kan met ISFOUT functie.

Post een voorbeeldje en er zal wel iemand voor jou de correcte formule "toveren" :cool:
 
ik ga proberen een mini voorbeeldje te toveren. Ik weet niet of het lukt zoals het nu gaat, want een aantal cellen hebben inderdaad de juiste waarde, maar bij andere cellen dus niet.
Code:
6,89
#N/B
#N/B
#N/B
#N/B
17,95
0,7
2,49
4008921
#N/B
#N/B
#N/B
AMBI PUR HYGIFLUSH DUO GREEN GARDEN
AMBI PUR INSPIRA AROMATIC WOOD STARTER
7,57
#N/B
3,49
Zo ziet het er nu uit. de ambi pur geeft ie dus weer en 4 regels daarboven, een artikel nummer.

De N#B, die staat inderdaad niet in de matrix. Dus niet iedere zoekwaarde komt voor in de matrix. Maar het artikel zoals hierboven de ambi pur, die doet het dus niet...maar staat wel in de matrix
 
Nog een klein vraagje :

is er in kolom 20 tem 23 telkens maar 1 prijs ingevuld per artikel ?
Anders hoef je niet te zoeken in die kolommen maar maak je gewoon de som van kolom 20 tem 23


Dit zal je formule al een heel stuk éénvoudiger maken :p
 
nee.. het kan zijn dat er in kolom 20 een prijs staat maar ook in kolom 23. Dan moet de prijs van kolom 20 gebruikt worden. (hetzelfde geldt voor de andere kolommen..) Het gaat erom dat dan iedere keer de meest linkse kolom met een waarde erin gebruikt wordt.
 
iemand? Please? Ik moet het voor 17:00 wel afhebben denk ik en met de formule zou het me lukken, als ik het met de hand moet doen niet.
 
het is via een zijweg opgelost:
Richard1970 zei:
Zet in kolom Z een formule neer die daar de juiste prijs neerzet. Bijv. via =ALS(T1="";ALS(U1="";ALS(V1="";W1;V1);U1);T1)
Verander je formule vert.zoeken in:
=ALS(ISNB(VERT.ZOEKEN(A1;Blad2!$A$1:$Z$9;26;0));0;VERT.ZOEKEN(A1;Blad2!$A$1:$Z$9;26;0))

waarbij de vert.zoeken formule alleen nog maar in kolom z hoefde te zoeken. dus het isnb heb ik niet meer gebruikt.

Overigens blijft voor mij nog wel de vraag staan: waarom werkte mijn vert.zoeken formule niet?
 
Laatst bewerkt:
Beste Arjo,

Jij nest meerder malen vert.zoeken in elkaar. Zodra één van die functie als resultaat #N/B oplevert, wordt dat de uitkomst van de hele formule.
Selecteer maar eens een cel met jouw functie, en klik dan op het =-teken.
In de formulebalk kun je dan op verschillende functies "vert.zoeken" klikken om in de wizard te zien wat de waarden zijn. Dar kwam ik zovaak #N/B tegen, dat ik even snel deze oplossing had bedacht.
Ben blij dat het werkt.,
Heb je de deadline nog gehaald?

Richard
 
ja het is op tijd gelukt. Maar wat ik niet helemaal begrijp dan is dat als er een keer /N#B als uitkomst was (er stond een heel aantal artikelen niet in die lijst) dat ie dan bij een andere regel als uitkomst het bestelnummer geeft, of de productomschrijving... dat snapte ik niet helemaal... En ik had er nog een regel voor isfout bij moeten plakken?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan