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

Getallen + tekst optellen of aftrekken in nieuwe cel

  • Onderwerp starter Onderwerp starter HWY
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

HWY

Gebruiker
Lid geworden
20 okt 2016
Berichten
6
Weet iemand welke functies moet ik toepassen?

Zie voorbeeld in bijlage

Tekst en getallen in hetzelfde cel.

=SOM(A2:B2) gaat niet lukken.

Voorbeeld optellen in cel.JPG

Groeten,
HWY
 
Pas wel even de cellen aan in de formule.
PHP:
=LEFT(A45;5)&MID(A45;6;5)+B45&RIGHT(A45;4)
Even op de PC aangepast.
In het Nederlands
PHP:
=LINKS(A45;5)&DEEL(A45;6;5)+B45&RECHTS(A45;4)
 
Laatst bewerkt:
Het zal komen omdat je nieuw bent hier (welkom) maar hierbij (weer) de opmerking:

plaats in het vervolg s.v.p. een voorbeeld EXCEL-bestand.

@ExcelAmateur: ik denk niet dat in de praktijk er altijd TEST aan het begin van de serie staat... dus betwijfel of de geboden formule gaat werken. En wil je s.v.p. formules tussen CODE-tags zetten i.v.m. leesbaarheid?
 
Laatst bewerkt:
AlexCEL,

Ik heb het naar het voorbeeld gedaan.
Tussen de code tags zetten wil niet echt lukken op de iPad, sorry.
 
Aha... is dat 't. Op het voorbeeld werkt het, geen discussie. Ook als het een soort code is die altijd begint met 5 tekens werkt het.

Misschien kan TS nog een kleine toelichting geven of het begin van de code altijd hetzelfde eruit ziet (m.n. of het dezelfde lengte heeft en of het spaties bevat).

In de tussentijd hier een voorstel (met ook een aantal aannames):

Bekijk bijlage Voorbeeld optellen in cel (AC).xlsx
 
Laatst bewerkt:
Bedankt voor snelle reacties.

Het werkt goed. super.

Heb nog een vraagje.

Wat als 2 letters extra toevoegen aan het begin van de code:

AA TEST 20.000 AAA


Dan werkt het formule niet?
 
HWY,

Doe in het vervolg een voorbeeldje met de juiste gegevens.
Dat is beter dan dat je na de oplossing met het vervolg komt.

In het voorbeeld had je dit gelijk kunnen doen.
 
Zijn de overige aannames van Alex wel juist? (altijd drie letters aan het einde van de code, geen spaties in test gedeelte)
 
Klopt.

De code bestaat uit:

2 letters spatie 3 letters spatie 5 getallen spatie 3 letters

Zoals in voorbeeld excel formaat is beschreven.

Even voor de duidelijkheid.
 
Laatst bewerkt:
Ok. In dat geval wordt de formule in cel C11 in het voorbeeldje uit post #9:
Code:
=LINKS($A11;7)&TEKST($B11+SUBSTITUEREN(DEEL($A11;8;7);".";"");"#.###")&RECHTS($A11;4)
 
Bekijk bijlage Voorbeeld optellen in cel AVL.xlsx

Gruwelijk omslachtig maar deze werkt wel...

OF nog omslachtiger maar dan filtert de formule echt het getal eruit en maakt het niet uit hoeveel spaties of tekst in A2 staan. Invoeren in C2 (bij voorbeeld Alex)... Wel als matrix formule invoeren (invoeren en afsluiten met ctrl-shift-enter)

Code:
=DEEL(A2;1;(MIN(ALS(ISGETAL(WAARDE(DEEL($A2;RIJ(INDIRECT("1:" &
LENGTE($A2)));1)));RIJ(INDIRECT("1:" & LENGTE($A2)));"")))-1)&TEKST(DEEL(A2;(MIN(ALS(ISGETAL(WAARDE(DEEL($A2;RIJ(INDIRECT("1:" &
LENGTE($A2)));1)));RIJ(INDIRECT("1:" & LENGTE($A2)));"")));(MAX(ALS(ISGETAL(WAARDE(DEEL($A2;RIJ(INDIRECT("1:" &
LENGTE($A2)));1)));RIJ(INDIRECT("1:" & LENGTE($A2)));"")))-(MIN(ALS(ISGETAL(WAARDE(DEEL($A2;RIJ(INDIRECT("1:" &
LENGTE($A2)));1)));RIJ(INDIRECT("1:" & LENGTE($A2)));"")))+1)+B2;"#.###")&RECHTS(A2;LENGTE(A2)-(MAX(ALS(ISGETAL(WAARDE(DEEL($A2;RIJ(INDIRECT("1:" &
LENGTE($A2)));1)));RIJ(INDIRECT("1:" & LENGTE($A2)));""))))
 
Laatst bewerkt:
Ik zou een UDF voorstellen:
Code:
Function TelOp(strA As String, dblX As Double)
    Dim Br
    Dim i As Long
    
    Br = Split(strA)
    For i = 0 To UBound(Br)
        If IsNumeric(Br(i)) Then
            Br(i) = Format(Br(i) + dblX, "#,##0")
            Exit For
        End If
    Next
    TelOp = Join(Br)
End Function
 
Volgende poging:
Code:
Function TelOp(strA As String, dblX As Double)
    Dim Br
    Dim i As Long, j As Long
    Dim x0 As String
    
    Br = Split(strA)
    For i = 0 To UBound(Br)
        If IsNumeric(Left(Br(i), 1)) Then
            For j = 1 To Len(Br(i))
                If IsNumeric(Left(Br(i), j)) Then x0 = Left(Br(i), j)
            Next
            Br(i) = Format(x0 + dblX, "#,##0") & Right(Br(i), Len(Br(i)) - Len(x0))
            Exit For
        End If
    Next
    TelOp = Join(Br)
End Function
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan