Just nu i M3-nätverket
Gå till innehåll
tuutti

Lägga nollor framför, så att alla artikelnummer får 5 siffror,går det?

Rekommendera Poster

hej

har en lista på artikelnummer som går från nummer 1 - 5584. Måste i Excel skapa en lista där alla artikelnummer får 5 siffror och därmed måste jag ha en formel för att fylla på med nollor framför befintliga artikelnumret enligt bifogade exempel: 

 

Gamla artnr               Nya

1                                00001

10                              00010

100                            00100

1000                          01000

 

Har börjat med att formatera hela kolumnen till "Text" för att nollorna inte skall försvinna, men sen blir det svårt! 

 

Måste nu med andra ord hitta en formel som känner av dels hur många tecken det är i gamla artikelnumret och därmed fyller på med 0, 00, 000 eller 0000 beroende på om det är 1, 2, 3 eller 4 siffror i gamla artikelnumret....

 

Är det någon som klarar att knäcka denna nöt, så blir jag imponerad! 

 

 

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Om A2 till A6 innehåller 1, 10, 100, 1000 samt 10000 (för att simulera ett ev. 5-siffrigt artikelnr och vi sätter texten 00000 i A7 kan du använda följande formel i B2:

=OM(LÄNGD(A2)<5;ERSÄTT($A$7;6-LÄNGD(A2);LÄNGD(A2);A2);A2)

Bara att autofylla nedåt. Anpassa formeln om du vill ha A7 på annal celladress istället.

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Postad (redigerade)

Jag föreslår en formelvariant av Tunes (om det inte räcker med att det ser rätt ut)

=TEXT(a1;"00000")   

 

TEXT() är en av excels glömda pärlor. Det är riktigt användbart om du behöver göra något med rådata som har lite olika format (det är mest datum jag brukar använda det till)

 

*************ED***************

här är en variant av Oves

=REP("0";5-LÄNGD(A2))&A2

Det är inte ofta man får en chans att använda REP(), så jag blev bara tvungen att klämma in den :-)

Redigerad av MH_resurrected

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser
Postad (redigerade)

Om man gillar macro för att fylla upp kan man använda följande kod:

 

Sub Fylla_0()
'Markera området som ska fixas och kör macrot
'Ändra "5" om du ska fylla med annat antal tecken
'Ändra "0" om du ska fylla med annat tecken.
 
Dim x As Object
Selection.NumberFormat = "@"
   For Each x In Selection
     x.Value = Application.WorksheetFunction.Rept("0", 5 - Len(x.Value)) & x.Value
   Next
 
End Sub
Redigerad av Tune

Dela detta inlägg


Länk till inlägg
Dela på andra webbplatser

Skapa ett konto eller logga in för att kommentera

Du måste vara medlem för att kunna kommentera

Skapa ett konto

Skapa ett nytt konto på vårt forum. Det är lätt!

Registrera ett nytt konto

Logga in

Redan medlem? Logga in här.

Logga in nu



×
×
  • Skapa nytt...