Waarde zoeken in ander document obv twee variabelen voor groot bereik

Status
Niet open voor verdere reacties.

Steven J.

Gebruiker
Lid geworden
14 dec 2005
Berichten
12
Ik ben bezig om een x aantal rapportages die ik handmatig maak te automatiseren en loop bij een van deze rapportages vast op een stuk VBA die ik nodig heb in mijn macro.

Ik heb een document dat heet "HELPMIJ Voorraadpunt.xls" waarin in kolom A locaties staan (gemiddelde 1500 stuks). In kolom J en K staan twee waarden die bepalen bij welk rayon de locatie hoort. De rayonnaam moet in kolom O geplaats worden. De verschillende waardes van kolom J en K i.c.m. het rayon staan in het document "HELPMIJ Rayon.xls" van A2:B38.
Extra bijkomend probleem is dat er vier locaties zijn die niet obv kolom J en K aan een rayon kunnen worden toebedeeld. Die vier locaties staan in "HELPMIJ Rayon.xls" van G2:H5. Alleen in die gevallen moet dus in kolom O van het document "HELPMIJ Voorraadpunt.xls" het woord AANNEMER komen te staan.

Normaal helpt het door te zoeken op internet en de help functie van VBA te gebruiken maar ik zie nu juist door de bomen het bos niet meer. :(
 

Bijlagen

Als ik het goed begrijp is het vrij eenvoudig: Plaats de onderstaande functie in HELPMIJ Voorraadpunt cell O10 en copieer deze door omlaag.

Code:
=IF(ISERROR(VLOOKUP(A10,'[HELPMIJ Rayon.xls]Blad1'!$G$2:$H$5,2,FALSE)=TRUE),VLOOKUP(J10&K10,'[HELPMIJ Rayon.xls]Blad1'!$A:$B,2,FALSE),VLOOKUP(A10,'[HELPMIJ Rayon.xls]Blad1'!$G$2:$H$5,2,FALSE))

Succes!
 
Dit is inderdaad een leuke formule maar qua VBA code snap ik niet hoe ik dit nu kan gebruiken.:confused:
Rechtstreeks in Excel een formule zetten en kopieren naar beneden etc daar draai ik m'n hand niet meer voor om maar ik wil dit graag in een VBA code zetten zodat ik met 1 druk op de knop een gedeelte van mijn rapportage klaar heb. .....en dat VBA is en blijft lastig maar elke dag leer ik bij. :)

Weet jij, Rattewrat, of iemand anders hoe ik de gewenste code kan samenstellen?
 
Zo:

Code:
Sub tst()
  On Error Resume Next
  With Workbooks(3).Sheets(1).Columns(10).SpecialCells(xlCellTypeConstants)
    ReDim sq(.Count)
    For Each cl In .Offset
      With Workbooks(2).Sheets(1).Columns(1).Find(cl & cl.Offset(, 1))
        sq(cl.Row - 9) = .Offset(, 1)
      End With
    Next
    sq(0) = "rayon"
    .Offset(, 5) = WorksheetFunction.Transpose(sq)
  End With
End Sub
 
:o ik voel me echt een nulletje op VBA gebied want ik snap helemaal niets van de code van SNB. Wel heb ik deze uiteraard in mijn stuk code geplakt die ik al had en even Option Explicit uitgezet maar de code deed niets (ook niet na aanpassen van enkele kleine stukjes). Verder nog even lopen oefenen met het stukje dat Rattewrat gaf maar daar kreeg ik ook foutmeldingen.
Ach de avond is nog jong dus ik gaat nog even door met proberen, zonder strijd geen overwinning.
 
Het is altijd handig om de namen van de workbooks en de sheets in te vullen overeenkomstig de situatie waarin je de test uitvoert.
Bijvv,:
Workbooks("Helpmij rayon.xls").Sheets("Blad1").
 
:o:o:o:o:o Stom stom stom van mij. Ik was er nu op een andere manier opgekomen, veel omslachtiger, maar het resultaat is hetzelfde. Ik ga nog wel de code van SNB straks even proberen. Thanks!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan