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

vlookup

Status
Niet open voor verdere reacties.

tepke

Gebruiker
Lid geworden
3 okt 2004
Berichten
237
hallo

ik kom er niet uit na verschillende sites te hebben geraadpleegd, het gaat om verticaal zoeken.
ik heb een cel waar ik de naam van de database(excel) file neer zet. is STRPathdata
vervolgens wil ik verticaal zoeken op artikelnummer in de database daar heb ik een range "data" naam bepaald
systeem geeft fouten op de naam bepaling wat doe ik verkeerd?

Code:
Dim STRPathData As String

    Blad3.Activate                                              'blad 3 activeren
    Range("c7").Select                                          'path file database cel activeren
    STRPathData = ActiveCell.Value                              'cel inlezen
    
    Blad1.Activate                                              'activeer blad 1
    Range("B33").End(xlDown).Offset(1, 0).Select                'ga naar laatste artikelnummer
        
    ActiveCell.Offset(0, 0).Value = Txt_Artikelnummer.Value     'vul cel met gegevens
    ActiveCell.Offset(0, 1).Value = ALS.FOUT(VERT.ZOEKEN(RC-1, STRPathData !_xlnm.Data", 2, ONWAAR), "")
   
    ActiveCell.Offset(0, 2).Value = Txt_aantal.Value            'vul cel met aantal
    ActiveCell.Offset(0, 8).Value = Txt_regelopmerking.Value    'vul cel met regelopmerking
 
In de regel waar het om gaat
Code:
ActiveCell.Offset(0, 1).Value = ALS.FOUT(VERT.ZOEKEN(RC-1, STRPathData !_xlnm.Data", 2, ONWAAR), "")
lijken mij (als niet-Excel kenner) de volgende zaken onjuist:
a. Ik zie een dubbel aanhalingsteken (") staan achter .Data die er niet hoort te staan, want er is geen openend dubbel aanhalingsteken
b. Volgens mij hoort er geen spatie te staan tussen STRPathData en !_xlnm.Data ?? Die staat er nu wel. Ik ken alleen externe verwijzingen waarbij de Excel bestandsnaam en het ! teken direct aan elkaar staan.
Als je eigenlijk een Excel bestand externe erbij wilde openen met een spatie achter de naam (dus een Excel bestand met de naam STRPathData<spatie>) dan had je een dubbel aanhalingsteken vóór StrPathData moeten toevoegen (en de afsluitende dubbele aanhalingsteken moet dan blijven staan), dus het wordt:
Code:
ActiveCell.Offset(0, 1).Value = ALS.FOUT(VERT.ZOEKEN(RC-1, [COLOR="#FF0000"][b]"[/b][/COLOR]STRPathData !_xlnm.Data", 2, ONWAAR), "")

Uiteraard zullen Excel-kenners hier ook nog een mening over hebben. :)

Tijs.
 
Laatst bewerkt:
Uit deze link zou ik haast denken dat de regel er eigenlijk zo had moeten uitzien:
Code:
ActiveCell.Offset(0, 1).Value = ALS.FOUT(VERT.ZOEKEN(RC-1, [STRPathData.xlsx]!_xlnm.Data, 2, ONWAAR), "")

en dan natuurlijk alleen als _xlnm.Data een benoemde reeks is in die data-file.

Tijs.
 
heb de fout code eruit gehaald

Code:
ActiveCell.Offset(0, 1).Value = VERT.ZOEKEN(RC-1, [STRPathData]!_xlnm.Data, 2, ONWAAR)

geeft nog steed een fout op _ van xlnm.data mag ook kolom A tot F zijn
 
Dat gaat zo natuurlijk helemaal niet met ALS.FOUT etc. direct in vba.
 
Het zal wel meer zoiets moeten worden:
Code:
ActiveCell.Offset(0, 1).FormulaLocal = "=ALS.FOUT(VERT.ZOEKEN(RC-1; [STRPathData.xlsx]!_xlnm.Data; 2; ONWAAR); """")"
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan