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

Excel zoeken over hele werkboek

Status
Niet open voor verdere reacties.

Pieter0475

Gebruiker
Lid geworden
9 apr 2020
Berichten
13
Hallo,

ik heb een excel gemaakt om foodcost te berekenen.
Er is een blad met ingrediënten en verschillende bladen met recepten.
Nu zou ik graag naast een ingrediënt zien in welke gerechten/recepten het voorkomt.

Het gaat dan om het zoeken van een waarde over verschillende tapbladen.
In mijn voorbeeld zou ik bijvoorbeeld willen terugvinden dat "GSH SPINAZIE GEW" voorkomt in de tabbladen "Koriandermayo" & "Jalapeno mayo" & "Avocado mayo".


Alvast bedankt voor de hulp,

Pieter
 

Bijlagen

  • Foodcost Helpmij.xlsx
    187,9 KB · Weergaven: 14
Dat kan eenvoudig met zoeken. <Ctrl> + f
 

Bijlagen

  • Knipsel.JPG
    Knipsel.JPG
    51,8 KB · Weergaven: 23
Hallo,

Bedankt voor je reactie, maar ik zou in een tabel naast mijn ingrediënt willen zien in welke recepten het voorkomt.
Ik heb een voorbeeld gemaakt in tabblad "voorbeeld"
 

Bijlagen

  • Foodcost Helpmij (1).xlsx
    189,6 KB · Weergaven: 13
Als basis heb ik de tab 'Ingrediënten' gebruikt. Alle lege regels heb ik maar even verwijderd omdat het geen nut heeft een tabel met lege rijen te gebruiken. De tab 'Filterblad' lijkt mij overbodig. Volgens mij kan het alleen met een macro. Probeer deze maar eens.

Code:
Sub VenA()
Dim j As Long, t As Long, ar, d, sh
  Set d = CreateObject("Scripting.Dictionary")
  ar = Sheets("Ingrediënten").ListObjects(1).DataBodyRange
  For j = 1 To UBound(ar)
    ReDim a(Sheets.Count + 1)
    a(0) = ar(j, 4)
    a(1) = ar(j, 5)
    t = 2
    For Each sh In Sheets
      If sh.Name <> "Voorbeeld" Then
        If IsNumeric(Application.Match(ar(j, 5), sh.Columns(1), 0)) Then
          a(t) = sh.Name
          t = t + 1
        End If
      End If
    Next sh
    d(d.Count) = a
  Next j
  With Sheets("Voorbeeld").ListObjects(1)
    If .ListRows.Count Then .DataBodyRange.Delete
    .ListRows.Add.Range.Resize(d.Count, Sheets.Count + 1) = Application.Index(d.items, 0, 0)
  End With
End Sub
 

Bijlagen

  • Foodcost Helpmij (1).xlsb
    111,4 KB · Weergaven: 18
Waaw!

Zou je nog enkele zaken willen veranderen zodat dit allemaal in het blad ingrediënten komt?
Sorry dat ik nu pas die vraag stel, maar was niet zeker dat we hier al zouden geraken :eek:
Mag ik dit bestand ook opslaan als .xlsm? Weet niet goed wat het verschil is tussen .xlsm en .xlsb

Alvast een dikke merci!

PS: Het tabblad Filterblad gebruik ik om mijn ingredienten in te vullen en zo een opzoeking te doen in de ingredientenlijst.
 

Bijlagen

  • Foodcost Helpmij v3.xlsb
    114,5 KB · Weergaven: 8
Zoals al geschreven is de tab 'Filterblad' overbodig. Je kan in de de validatielijsten ook de tab 'Ingrediënten' gebruiken. Het verschil tussen een .XLSM en .XLSB is vast via Google ook te vinden. Zaken veranderen mag je eerst zelf proberen zeker als je steeds met andere wensen komt. Volgens mij is de tab 'Ingrediënten' niet compleet omdat het een soort van prijzentabel is waarvan de datum van inkoop waarschijnlijk ook een effect zal hebben op de rest van tabjes.
Ik zou 1 tabel gebruiken waarin je de gerechten en ingrediënten opneemt en vervolgens een keertje over de opmaak gaat nadenken. Met vijf gerechten is het allemaal nog wel te overzien maar als het er veel worden dan loop je tegen allerlei beperkingen aan. Eerst even goed nadenken over wat je uiteindelijk wil lijkt mij niet verkeerd.:d
 
Hier nog een optie met een matrixformule en 5 hulpregels. (zie tab "Voorbeeld")

Voor office 365 kan het wat eenvoudiger.
In C2:

Code:
=TRANSPONEREN(FILTER($A$19:$A$23;AANTAL.ALS(INDIRECT("'"&$A$19:$A$23&"'!A8:A46");$B2);""))
 

Bijlagen

  • Foodcost Helpmij (1).xlsx
    191,8 KB · Weergaven: 14
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan