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

Zoekfunctie op woorden binnen gehele Excel sheet

Status
Niet open voor verdere reacties.

schou092

Gebruiker
Lid geworden
11 feb 2015
Berichten
34
Hallo,

Ik heb een Excel sheet waarin ik in 1 tabblad zo'n 10000 regels heb staan en 16 kollommen. Al met al dus een behoorlijk aantal cellen zeker als je iets wilt zoeken.

Ik weet dat je binnen Excel een standaard zoekfunctie hebt. Echter ik zoek meer en krijg dit binnen de standaard zoekfunctie niet voor elkaar.

Ik zou graag horizontaal (binnen een rij) willen zoeken en dan zoeken op rijen die bepaalde woorden bevatten. In de bijlage staat een sheet met 20 gevulde regels maar het idee mag duidelijk zijn. Nu is regel 8 t/m 24 gevuld maar dat is in werkelijkheid regel 8 t/m 10008 en kan ook meer worden.

Stel ik wil zoeken op waardes waarin in de E kolom Accessoires staat en in de F kolom Rollei dan zou ik dus als resultaat willen hebben dat ik alleen rij 8 en 9 te zien krijg.
Stel ik wil zoeken op waardes waarin in de E kolom Camera staat en in de J kolom A dan zou ik dus als resultaat willen hebben dat ik alleen rij 10, 13, en 18 te zien krijg.

Nu hoor ik het antwoord al: ga dan gewoon filteren. Dat begrijp ik en dat kan ook tot op zekere hoogte. Maar stel nou dat ik wil zoeken op alle rijen waarbij de woorden Planar en Distagon voorkomen (dit mag in deze volgorde maar kan ook andersom en er kunnen ook woorden tussen staan en het hoeft niet in dezelfde kolom te staan) dan zou ik dus in dit voorbeeld als resultaat alleen rij 14 willen hebben.

Kortom ik zou een uitgebreide zoekfunctie willen.

In de opzet heb ik een 2-tal opties opgenomen. 1 met 2 zoekvelden (geel links) en 1 met 3 zoekvelden (geel rechts). Ik zou dus een mogelijkheid hebben (waarschijnlijk zal dat dan een macro worden) waarbij ik in de zoekvelden woorden ingeef en het resultaat middels search getoond wordt. Graag zou ik ook de velden leeg willen laten. Dus de beste mogelijkheid is om 3 of meer zoekvelden te hebben en dat er gezocht kan worden op 1 of 2 of 3 of alle velden. Als dat niet kan zou een optie zijn om een zoekfunctie met 1 zoekveld + een zoekfunctie met 2 zoekvelden + een zoekfunctie met 3 zoekvelden te maken (zoals nu in het voorbeeld alleen mist daar de optie met 1 zoekveld).

Heeft iemand een oplossing?

Alvast bedankt.

Marco

Bekijk bijlage EXCEL1.xlsx
 
Bedankt voor je hulp. Helaas werkt dit niet helemaal. Buiten het feit dat er mogelijk een fout zit in de macro voor kolom F kan ik er niet vanuit gaan dat ik weet in welke kolom er iets specifieks staat. Dat zou het wel makkelijker maken maar is helaas niet zo.

Uitgangspunt is dus dat we niet weten waar iets staat en niet in welke volgorde o.i.d. Het kan in 1 cel staan maar ook in 2 cellen op dezelfde regel. Excel zal dus de gehele sheet af moeten gaan.

Enig idee?

Marco
 
Hoi Maurice,

Denk dat mijn kennis hier even ophoudt. Hoe kan ik nu zoeken? Als ik op zoeken klik dan krijg ik de filters te zien maar meer ook niet......

Marco
 
Ik zie hoe je zoekt. Maar dit blijft zoeken op kolom. Ik moet dus per kolom het te zoeken woord of woorden invullen. En als ik nu bijv. 3 woorden zoek die in verschillende kolommen staan wordt het aantal opties legio.

Marco
 
Wellicht iemand nog een suggestive hoe dit problem op te lossen.

Ik hoop dat iemand het antwoort weet.

Alvast bedankt.

Gr.

Marco
 
Ook zo'n vraag hier eens gesteld met dit resultaat.
Enige nadeel alle cellen waarin een getal staat moet je omzetten naar tekst (' ervoor) anders werkt de sortering op getallen niet.
Wil je niet op getallen zoeken dan hoeft dat dus niet.
 

Bijlagen

Bedankt voor het antwoord. Helaas werkt dit niet voldoende. Bij deze oplossing moet ik specifiek in de juiste kolom zoeken naar het woord. Dus wil ik bijv. de Grip zoeken dan moet ik specifiek in het grijze valk van kolom G de zoekopdracht geven. Je zou je voor kunnen stellen dat ik niet weet in welke kolom het betreffende woord staat. Maar je zou je ook voor kunnen stellen dat ik 2 woorden zoek maar niet de volgorde weet of bijv 3 woorden om het nog makkelijker te maken. Het resultaat komt hier alleen naar voren wanneer ik in de juiste kolom de opdracht geef en de woorden in de juiste volgorde. Doe ik dat niet dan ik het resultaat 0,0

M.a.w. ik ben dus echt op zoek naar een methode waarbij ik in een cel of een aantal cellen die niet aan een kolom gekoppeld zijn woorden of inderdaad getallen kan invoeren waarna er binnen de sheet gekeken wordt of deze combinatie van woorden en of getallen op een bepaalde regel voorkomen en indien ja dan wordt/worden die regel(s) getoond.

Ik hoop dat iemand mij verder kan helpen.

Bedankt.

Marco
 
Bedankt. Helaas nog niet het beoogde resultaat. De zoekfunctie laat niet alleen alle combinaties zien maar ook moeten de ingegeven worden in exact dezelfde opbouw, volgorde etc. geschreven worden als in de cel. In jouw voorbeeld zitten 3 zoekvelden. Komt elke cel in een andere regel voor dan worden al die regels getoond en ik wil alleen de regels hebben waar alle 3 de woorden voorkomen.

Wellicht verstandig om het idee en het gewenste resultaat nogmaals uit te leggen uitgaande van mijn eigen sheet:

- ik voer bijv in cel B1 en C1 een 2-tal woorden of in cel G1, H1 en I1 een 3-tal woorden in
- Excel gaat de gehele sheet doorlopen A8 t/m P24 op zoek naar een regel waar al die ingegeven woorden (2 of 3 zoals ingegeven) in voorkomen
- Deze woorden kunnen in dezelfde cel staan, kunnen in verschillende cellen staan, volgorde van deze woorden kan omgedraaid zijn (in een sheet met 10000 regels en 16 cellen in het immers niet altijd even duidelijk in welke volgorde iets geschreven is) etc.
- Zijn er meerdere regels waar die gezamelijke combinaties voorkomen dan worden al die regels getoond (dus bijv. in 3 regels dan worden 3 regels getoond)

Wellicht iemand een aanvulling?

Alvast bedankt voor jullie hulp.

Marco
 
Bedankt maar helaas lijkt het niet te werken. Alleen 1e veld zoekt als ik het goed zie.

De bedoeling is dat als ik zoek op

Accessoires Leitz Lege

Ik rij 16 te zien krijg

Maar ook als ik zoek op

5x Lege

wil ik rij 16 te zien krijgen.

Als de woorden dus in meerdere rijen in die combinatie voorkomen dan alle rijen waar het in staat.

Dus staat Accessoires

Leitz Lege 5x

In 5 rijen dan die 5 rijen. Als alleen Leitz of bijv. alleen 5x erin staat dan hoeft het niet getoond te worden.

Bedankt voor julle hulp!

Marco
 
zoek woorden alleen in gele cellen

ps ik had nog niet begrepen dat er ook gezocht wordt op delen van tekst
 

Bijlagen

Bedankt. Eerste test in jouw sheer ziet er veelbelovend uit. Ik neem aan dat ik hem gewoon kan kopieren naar mijn eigen sheet die 10000 regels heeft?

ga straks even stoeien. Eerst de kinderen op bed leggen :-)
 
Ik ben een heel eind op weg. Heb nog 2 problemen:

- Graag zou ik het aantal zoekvelden naar 4 uitbreiden maar dat lukt mij niet helemaal.
- Ik wil de macro toepassen op mijn eigen sheet maar krijg dan een melding van een koppeling. Hoe krijg ik de macro in mijn eigen sheet?

Alvast bedankt.

Marco
 
geef eens aan waar de zoekwaarden in jouw bestand moeten komen (bvb kan in de hele eerste rij staan)
en waar jouw tabel staat (bvb vanaf de zevende rij )
 
Bijgaand de opzet van mijn excel sheet zonder macro. In feite worden er alleen maar regels met data toegevoegd. Niet verwijderd.

- Ik heb de zoekvelden nu op B2, C2 en D2. Ik zou deze graag uitgebreid hebben beginnend bij B2 en dan C2 etc. Bij voorkeur oneindig maar ik weet niet hoeveel werk dat is. Anders naar 5 zoekvelden?
- De sheet begint vanaf rij 10 dus A10 is het eerste veld. Laatste kolom nu is kolom Q. De volledige sheet eindig nu op rij 10000 maar wordt uitgebreid. Weet niet of de laatste rij van toepassing is
- De sheet heet nu Inventarisatie 20-02. Echter deze wordt regelmatig aangepast en dus ook de naam (volgende week bijvoorbeeld Inventarisatie 27-02). Hoe krijg ik de macro mee naar de nieuwe sheet zonder daarbij meldingen van Excel te krijgen. Krijg nu bijv. meldingen als bewerken, koppeling etc.
- Sheet moet ook gemaild kunnen worden dus alles incl. de macro moet meegaan

Ik ga zelf ook stoeien want het stoort mij dat ik dit zelf niet werkend krijg. Alle input is uiteraard wel welkom.

Bedankt.

Marco

Bekijk bijlage Inventarisatie 20-02.xlsm
 
je kan de hele tweede rij gebruiken voor zoek waarden (hoe meer hoe langer het duurt )
als het te lang duurt kan de code wel op snelheid geoptimaliseerd worden ( ik hoor het wel )
er zit wat uitleg in de code.
Code:
Sub Search()
    Dim Totaal As Range, ZoekWaarden As Range, Rij As Range, Waarde As Range
    Set ZoekWaarden = [2:2]      'door deze  2:2 worden de zoekwaarden uit de tweede rij gehaald
    ZoekWaarden.SortSpecial , , , , , , , , , , , xlSortRows
    Set Totaal = ZoekWaarden.Cells(1, 1)
    For Each Rij In ActiveSheet.UsedRange.Offset(8).Rows ' door deze 8 begint de hoofdtabel op rij 9
        For Each Waarde In ZoekWaarden
            If Waarde = "" Then Set Totaal = Union(Totaal, Rij.Cells(1, 1)): Exit For
            If Rij.Find(Waarde, , , xlPart) Is Nothing Then Exit For
        Next Waarde
    Next Rij
    If Totaal.Count > 1 Then
        ActiveSheet.UsedRange.Offset(7).EntireRow.Hidden = True
        Totaal.EntireRow.Hidden = False
    Else
        ActiveSheet.UsedRange.EntireRow.Hidden = False
    End If
End Sub
 

Bijlagen

Laatst bewerkt:
Bedankt. De sheet werkt op de locale computer. Ook als ik die een andere naam geef. Echter als ik de nieuwe sheet (nieuwe naam) mail naar een andere computer krijg ik eerst de melding Macro inschakelen en daarna de melding Koppeling bewerken, Bijwerken of Koppeling Negeren. Locaal krijg ik dit niet waarschijnlijk omdat de macro op de locale computer in de originele file staat.

Suggestie hoe ik dit moet aanpassen?

Marco
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan