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

Veld verwijderen uit een cel

Status
Niet open voor verdere reacties.

PatricaCalor

Gebruiker
Lid geworden
13 jun 2018
Berichten
21
Hoi,

Ik heb een vraagje. Ik heb een aantal regels in een spreadsheet die er als volgt uit zien:

Jan Jansen, blauwe fiets, 5 versnellingen, in prims staat, 020-754838392
Piet Pietersen, gele step, 010-8474832

Ik wil nu het laatste woord verwijderd hebben, dus na toepassing van de formule wordt het resultaat:

Jan Jansen, blauwe fiets, 5 versnellingen, in prims staat
Piet Pietersen, gele step

Hoe krijg ik dit voor elkaar? ik heb al wat geprobeerd met MID, FIND commando's maar helaas. Alvast bedankt!


Ik gebruik Excel 2010.

groetjes,
Patricia
 
Zonder excel-voorbeeldje geen garantie dat dit altijd goed gaat, maar als het altijd een 10-cijferig telefoonnummer is op het einde (met een streepje), dan voldoet dit wellicht.
Code:
=LINKS(A1;LENGTE(A1)-13)
Maar dit zal wel te simpel gedacht zijn.
 
Laatst bewerkt:
Het laatste woord kan verschillende lengtes hebben. In de bijlage heb ik een voorbeeldje opgenomen.

Groetjes,
Patricia
 

Bijlagen

  • testbestandlaatstewoord.xlsx
    8,6 KB · Weergaven: 27
Na wat gepuzzel kom ik tot:
Code:
=LINKS(SUBSTITUEREN(A1;",";"|";LENGTE(A1)-LENGTE(SUBSTITUEREN(A1;",";"")));VIND.SPEC("|";SUBSTITUEREN(A1;",";"|";LENGTE(A1)-LENGTE(SUBSTITUEREN(A1;",";""))))-1)
 
Ik heb een Engelstalige versie van Excel.
Ik heb er van gemaakt:

=LEFT(SUBSTITUTE(A1;",";"|";LEN(A1)-LEN(SUBSTITUTE(A1;",";"")));FIND.SPEC("|";SUBSTITUTE(A1;",";"|";LEN(A1)-LEN(SUBSTITUTE(A1;",";""))))-1)

Maar volgens mij gaat dat niet helemaal goed...
Is FIND.SPEC correct?

Groetjes
Patricia
 
VIND.SPEC is SEARCH in de Engelse versie. Tip voor vertalen van formules: https://nl.excel-translator.de/translator/. Hier kun je ook instellen of je komma's of puntkomma's wilt gebruiken.

Nog een alternatief om de laatste term te verwijderen:
Code:
[NL] =SUBSTITUEREN(A1;", "&SPATIES.WISSEN(RECHTS(SUBSTITUEREN(SPATIES.WISSEN(A1);" ";HERHALING(" ";99));99));"")

[EN] =SUBSTITUTE(A1;", "&TRIM(RIGHT(SUBSTITUTE(TRIM(A1);" ";REPT(" ";99));99));"")

Edit: vanaf Excel 2013 is de functie SPATIES.WISSEN veranderd in TRIM.
 
Laatst bewerkt:
Super het gaat al beter.

Ik heb ook regels in de sheet met als laatste woord: , 0684349494 / 06193940404
Daarbij lukt het dan niet,

Heb je daar ook een oplossing voor?

Dank,
Patricia
 
Nu snap je ook de reden waarom we vragen om een representatief voorbeeld... om oplossingen te kunnen testen in alle voorkomende situaties.

Oplossing voor het specifieke geval hierboven:
Code:
[NL Excel 2010] 
=SUBSTITUEREN(SUBSTITUEREN(A1;" / ";"/");", "&SPATIES.WISSEN(RECHTS(SUBSTITUEREN(SPATIES.WISSEN(SUBSTITUEREN(A1;" / ";"/"));" ";HERHALING(" ";99));99));"")

[Vanaf NL Excel 2013] 
=SUBSTITUEREN(SUBSTITUEREN(A1;" / ";"/");", "&TRIM(RECHTS(SUBSTITUEREN(TRIM(SUBSTITUEREN(A1;" / ";"/"));" ";HERHALING(" ";99));99));"")

[EN] 
=SUBSTITUTE(SUBSTITUTE(A1," / ","/"),", "&TRIM(RIGHT(SUBSTITUTE(TRIM(SUBSTITUTE(A1," / ","/"))," ",REPT(" ",99)),99)),"")

Ik kwam erachter dat vanaf Excel 2013 de functie SPATIES.WISSEN niet meer voorkomt in de Nederlandstalige Excel, en vervangen is door de functie TRIM.
 

Bijlagen

  • testbestandlaatstewoord (AC).xlsx
    11,4 KB · Weergaven: 23
Laatst bewerkt:
Hi Alex,

Dank, het punt is dat er allerlei soorten strings kunnen voorkomen na de laatste komma.

Is er geen functie die ervoor zorgt dat alles wat na de laatste komma komt wordt verwijderd, ongeacht welk teken erin voorkomt en wat erin staat?


Ik zie nl dat jouw laatste functie inderdaad een hoop weghaalt, maar bijvoorbeeld +31 649393023 weer niet.
Aangezien het gebruikersinput is kan er in de praktijk van alles in staan.

Ben benieuwd!

Groetjes,
Patricia
 
Als je powerquery gebruikt (gratis download voor 2010) dan is dit een eitje.
 
Ok. Terug naar de tekentafel.

Voldoet dit dan?
Code:
[NL] =LINKS(A2;VIND.ALLES("@";SUBSTITUEREN(A2;",";"@";(LENGTE(A2)-LENGTE(SUBSTITUEREN(A2;",";"")))))-1)
[EN] =LEFT(A2,FIND("@",SUBSTITUTE(A2,",","@",(LEN(A2)-LEN(SUBSTITUTE(A2,",","")))))-1)
 
Super zeg!

Ik heb wel de komma's vervangen door puntkomma's in de formule dus:

=LEFT(B419;FIND("@";SUBSTITUTE(B419;",";"@";(LEN(B419)-LEN(SUBSTITUTE(B419;",";"")))))-1)

Hartstikke bedankt!

groetjes,
Patricia
 
Lijkt me typisch een UDF-gevalletje:

Code:
Function F_snb(c00)
  sn = Split(c00, ",")
  F_snb = Replace(c00, "," & sn(UBound(sn)), "")
End Function

Function F_snb_000(c00)
  sn = Split(c00, ",")
  F_snb_000 = sn(UBound(sn))
End Function
 
Hoi,

Toch nog een vraagje, de formule =LEFT(B419;FIND("@";SUBSTITUTE(B419;",";"@";(LEN(B419)-LEN(SUBSTITUTE(B419;",";"")))))-1)
werkt prima. Het haalt de tekens na de laatste komma weg.

Hoe kan ik nu de tekens die weggehaald zijn ook in een kolom krijgen?

Dus stel ik heb staan: Auto, bouwjaar 2010, diesel, 06xxxxxxxxx dan haalt de formule hierboven de komma weg en het 06 nummer. Maar als ik nu het 06 nummer uit deze tekst wil, hoe doe ik dat?

Vanuit rechts uit bekeken, alle tekens totdat een komma wordt tegengekomen.

groetjes,
Patricia
 
Stel dat B419 de originele tekst bevat en C419 de formule hierboven, dan zijn hier wat opties voor D419:
Code:
=SUBSTITUEREN(B419;C419&", ";"") 
=VERVANGEN(B419;1;LENGTE(C419)+2;"")
=RECHTS(B419;LENGTE(B419)-LENGTE(C419)-2)
Vertaald:
Code:
=SUBSTITUTE(B419;C419&", ";"")
=REPLACE(B419;1;LEN(C419)+2;"")
=RIGHT(B419;LEN(B419)-LEN(C419)-2)
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan