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

Opgelost Getalnotatie aangepast

  • Onderwerp starter Onderwerp starter Senso
  • Startdatum Startdatum
Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

Senso

Inventaris
Lid geworden
13 jun 2016
Berichten
11.302
Besturingssysteem
W10 Pro en W11 Pro
Office versie
Office 2007 H&S en Office 2021 Prof Plus
Ik wil een getalnotatie automatisch wijzigen
van 12345678912345
naar > altijd drie cijfers aan het eind maar geen 0 aan het begin tenzij er werkelijk een nul staat.

1.23.45.67.89.12.345
dus voor de 1 mag geen 0 geplaatst worden

Het mag wel worden in dit geval (liever). De binnengroep bestaat altijd uit twee cijfers. > .12.55.66.
123.45.67.89.12.345
Let op het getal kan langer of korter worden. Excel 2007.

00\.00\.00\.00\.00\.000 ik heb zoiets, maar het lukt nog niet goed.
 
Misschien?

PHP:
=TEXT(A1;IF(ISODD(LEN(A1));REPT( "00\.";(LEN(A1)-3)/2) & "000";"000\." & REPT("00\.";(LEN(A1)-6)/2) & "000"))
 
Ja, heel mooi. Een getalnotatie zal dan wel niet kunnen? Bedankt voor de inzet en snelle hulp.
 
Nee helaas met een standaard getalnotatie lukt dit niet. Je kunt het wel omzetten naar VBA waarbij de getalnotatie telkens wordt omgezet naar de juiste.
 
Als de getallen te groot worden krijg je wel afrondingsfouten heb ik gemerkt...

Bijvoorbeeld:
1234567891234545 123.45.67.89.12.34.540
123456789123453333123.45.67.89.12.34.53.000
 
Bedankt. Ik zal het in de gaten houden en kijken wat het beste lukt. Voorlopig is het niet verder aan de orde. Het zijn factuurnummers, banknummers e.d. vaak niet langer dan 15 tekens en soms met twee letters aan het begin en om die dan goed leesbaar te maken. Handmatig corrigeren kan altijd.
 
Was wel een leuke oefening in Power Query :)
 
Hier ook nog eentje in Power Query :)

PHP:
let
    Source = Excel.CurrentWorkbook(){[Name="Tabel2"]}[Content],
    cType = Table.TransformColumnTypes(Source,{{"Nummer", type text}}),
    result = Table.AddColumn(cType, "Output", each
          let
              txt = Text.Length([Nummer]),
              xList = List.Skip(List.Alternate({1..txt-2},1,1,(if Number.IsEven(txt) then 1 else 2)))
          in    
              List.Accumulate(xList,[Nummer],(s,c)=>
                  Text.Insert(s,c+List.PositionOf(xList,c) ,".")
                )
          )  
in
    result
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan