Help!

PC-Problemen?
De vrijwilligers van Oplossing.be zoeken gratis met u mee!

Hulp bij posten

Recente topics

Auteur Topic: specifieke letter of letters verwijderen uit cel  (gelezen 422 keer)

0 leden en 1 gast bekijken dit topic.

Offline robertvankralingen

  • Lid
  • *
  • Berichten: 19
  • Geslacht: Man
  • Hey, ik ben nieuw hier !
specifieke letter of letters verwijderen uit cel
« Gepost op: 15 oktober 2021, 14:26:00 »
Goedemiddag,

Ik wil graag een specifieke letter of letters verwijderen uit een cel middels een formule.

Ik zou van onderstaande gegevens de "gr", "kg", "g" of "st" er af willen halen.

Input
12x750gr
13x1.5kg
14x750g
8x4st

Output
12x750
13x1.5
14x750
8x4

Kan iemand mij helpen aan een formule die dat mogelijk maakt?

Alvast bedankt!

Gr. Robert

Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #1 Gepost op: 15 oktober 2021, 14:54:17 »
Met deze UDF.

Deze plak je achter een module: VBA editer openen, rechtermuisknop, invoegen module.

Function jec(cell As String) As String
 With CreateObject("VBScript.RegExp")
   .Global = True
   .Pattern = "[^\d+x\d+(\d\.+)]"
   jec = .Replace(cell, "")
 End With
End Function

Invoeren als
=jec(A1)

Offline robertvankralingen

  • Lid
  • *
  • Berichten: 19
  • Geslacht: Man
  • Hey, ik ben nieuw hier !
Re: specifieke letter of letters verwijderen uit cel
« Reactie #2 Gepost op: 15 oktober 2021, 15:02:30 »
Dank voor jullie snelle reactie.

Ik was nog niet bekend met VBA maar net even geprobeerd en het werkt super!

Ik ben er heel blij mee.

Fijn weekend alvast!

Mvg Robert

Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #3 Gepost op: 15 oktober 2021, 15:20:49 »
Het kan zijn dat het nog misgaat ergens. Ik kan straks een verbeterde versie sturen

Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #4 Gepost op: 15 oktober 2021, 16:25:02 »
Kleine aanpassing waardoor komma getallen ook mee worden genomen

Function jec(cell As String) As String
 With CreateObject("VBScript.RegExp")
   .Global = True
   .Pattern = "[^\d+x\d+(\d\.|,+)]"
   jec = .Replace(cell, "")
 End With
End Function

Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #5 Gepost op: 16 oktober 2021, 09:25:30 »
Ook nog een mogelijkheid zonder Regular expression.
Het kan ook in een macro gezet worden, waarmee je de brondata direct aanpast. Dan heb je geen extra kolom.

Function jec(cell As String) As String
   For i = 97 To 122
     If i <> 120 Then cell = Replace(cell, Chr(i), "")
   Next
   jec = cell
End Function

Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #6 Gepost op: 18 oktober 2021, 22:54:25 »
=LEFT(A1;MIN(IFERROR(SEARCH(CHAR(ROW($97:$122));SUBSTITUTE(A1;"x";"@"));999))-1)

Offline robertvankralingen

  • Lid
  • *
  • Berichten: 19
  • Geslacht: Man
  • Hey, ik ben nieuw hier !
Re: specifieke letter of letters verwijderen uit cel
« Reactie #7 Gepost op: 19 oktober 2021, 12:42:59 »
Hi Veerj,

De VBA's werken niet zoals verwacht omdat er nog komma's staan achter sommige "confecties".

De eerste VBA die je hebt gestuurd werkt goed maar inderdaad is nog niet waterdicht.

Zo moet ik daarbij nog handmatig de komma naar punt veranderen in OpmerkingenProductie veld

In de bijlage zit het werkblad zoals ik daar nu mee werk en heb nog twee kolommen toegevoegd met jouw twee laatste VBA's en formule. Kan jij mijn bestand bekijken in de bijlage?

Groetjes,

Robert

Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #8 Gepost op: 19 oktober 2021, 13:15:17 »
Ik zie dat je de formule niet juist hebt vertaald.
Verander "ZOEKEN" eens naar VIND.SPEC.

Werkt de formule dan naar wens?

Offline robertvankralingen

  • Lid
  • *
  • Berichten: 19
  • Geslacht: Man
  • Hey, ik ben nieuw hier !
Re: specifieke letter of letters verwijderen uit cel
« Reactie #9 Gepost op: 19 oktober 2021, 13:38:38 »
Hi Veerj,

Zojuist ZOEKEN naar VIND.SPEC aangepast en dan zie ik nog steeds g,kg en st staan.

De bedoeling van de confectie is dat de syntax uitsluitend getal"x"getal is dus bijvoorbeeld: 10x500 of 8x1.5 etc..

Groetjes,

Robert


Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #10 Gepost op: 19 oktober 2021, 13:45:14 »
Als ik deze formule in L2 zet werkt het bij mij.
Als je geen office 365 heb zou ik deze formule even afsluiten met control shift enter(matrix)

=LEFT(H2;MIN(IFERROR(SEARCH(CHAR(ROW($97:$122));SUBSTITUTE(H2;"x";"@"));999))-1)

Offline robertvankralingen

  • Lid
  • *
  • Berichten: 19
  • Geslacht: Man
  • Hey, ik ben nieuw hier !
Re: specifieke letter of letters verwijderen uit cel
« Reactie #11 Gepost op: 19 oktober 2021, 13:55:21 »
Yesssss bij mij doet 'ie het ook!  8)

Offline Veerj

  • Ervaren lid
  • ***
  • Berichten: 277
Re: specifieke letter of letters verwijderen uit cel
« Reactie #12 Gepost op: 19 oktober 2021, 13:55:38 »
Je zou deze nog kunnen proberen als je alleen de eerste ..x.. wilt hebben.

Function jec(cell As String) As String
 With CreateObject("VBScript.RegExp")
   .Global = True
   .Pattern = "[^\d+x\d+(\d\.|,+)]"
   jec = Replace(.Replace(cell, ""), ",", "")
 End With
End Function

 


www.combell.com