Avatar billede Nikolaj_IP Juniormester
06. december 2016 - 12:48 Der er 18 kommentarer

Undgå konvertering af EAN numre

Hejsa,

Jeg sidder og skal behandle (fjerne/tilføje) en masse (over 1000) EAN numre i et Excel ark.

Problemet er at Excel automatisk ændrer disse EAN numre til et mystisk format (vel en matematisk forkortelse af tallet som EAN nummeret er) - et eksempel er:
EAN: 7427457530516
Excels fortolkning af dette EAN: 7,42746E+12

Hvordan undgår jeg dette? Har prøvet at formatere cellerne som jeg skriver EAN numrene ind i til både tal og tekst, men det hjælper desværre ikke.
Kan via guiden tekstimport godt undgå problemet, men det øger min arbejdstid alt for meget.

Håber i har nogle ideer - på forhånd tak!

Med venlig hilsen,
Nikolaj.
Avatar billede ebea Ekspert
06. december 2016 - 13:04 #1
Du kan formatere dem som brugerdefinerede:  #############
Avatar billede Nikolaj_IP Juniormester
06. december 2016 - 13:49 #2
#1 Tak for svaret. Hvordan gøres det? :)
Avatar billede supertekst Ekspert
06. december 2016 - 13:56 #3
Marker området
Højreklik
Formater celler
Tal
Brugerdefineret
Avatar billede ebea Ekspert
06. december 2016 - 14:09 #4
#2  -  Som Supertekst skriver! Højreklik på cellen, "Formater celler" vælg "Brugerdefineret", og indtast det angivne oppe i linjen hvor der står "standard".
13 ### stk. for dine EAN numre
Avatar billede Nikolaj_IP Juniormester
06. december 2016 - 14:11 #5
#3 Tak for hjælpen. Det virker nogenlunde, men jeg skal køre denne formatering på cellerne bagefter jeg har sat værdierne ind, hvilket er en smule irriterende. Kunne man forestille sig, der er en måde at få Excel helt til at holde op med at konvertere disse EAN numre, allerede når de sættes ind i arket?

Med venlig hilsen,
Nikolaj.
Avatar billede supertekst Ekspert
06. december 2016 - 14:16 #6
Hvordan opdateres EAN-nr?

Forestiller du dig en form for automatik, som automatisk ændre formateringen?
Avatar billede Nikolaj_IP Juniormester
06. december 2016 - 14:51 #7
#6 Er lidt i tvivl om dit spørgsmål - i min situation opdateres de manuelt, jeg finder et EAN nummer på en vare, hopper ind i Excel arket, finder varens række og indsætter EAN nummeret i kolonnen til netop disse.
Forestiller mig, at det er muligt at sørge for at Excel ikke ødelægger de indsatte værdier, at det simpelthen ikke ændrer på det jeg indsætter i arket. Man skulle synes, at hvis man formaterer EAN'erne som tekst skulle det hjælpe, men nej.
Derudover er der et problem i at mange EAN numre f.eks. også kan have et eller to 0'er foran, så i stedet for 7427457530516 kunne det være 007427457530516. Disse to tal forsvinder, når den tror, det er talmateriale.
Avatar billede ebea Ekspert
06. december 2016 - 14:53 #8
#5  -  Kan du ikke bare klikke oppe i toppen af den kolonne du skal bruge til dine tal, så hele kolonnen er markeret, og så formater som beskrevet.
Når du kommer over 12 tal, vil Excel lave den konvertering, hvor den sætter et komma, og derefter antal cifre angivet i tal, i de efterfølgende cifre (12 i dit tilfælde).
Avatar billede ebea Ekspert
06. december 2016 - 14:57 #9
#7  -  Så vælg hele kolonnen, formater som beskrevet, og indsæt 15 Nuller (000000000000000) som brugerdefineret. Derved holder du også dine foranstillede Nuller.
Så kan du indsætte så mange EAN numre du vil i kolonnen, uden at de ændres!
Avatar billede supertekst Ekspert
06. december 2016 - 14:59 #10
#7 Kunne du forestille dig at det hele blev automatiseret når EAN nr er fundet?
Lyder som om det kunne være en mulighed - men det kan jo komme an på en prøve..
Avatar billede Nikolaj_IP Juniormester
06. december 2016 - 15:10 #11
#8/9 Jo, det er også det, jeg har gjort, men så snart jeg indsætter en ny værdi er den på det forkerte format (7,42746E+12). Her kan man så sige, at jeg jo bare en gang i mellem skal køre ovennævnte formatering og det er også rigtigt, lige bortset fra at på daværende tidspunkt er 0'erne forsvundet.
Din ide med 15 nuller i formateringen holder desværre ikke, da det ikke er alle EAN numrene, der har disse nuller foran resten af EAN nummeret - dermed tilføjes der to nuller til alle de 13-cifrede EAN numre, hvilket heller ikke går.

#10 Hvordan tænker du?

#9/10 Sætter pris på svarene :).
Avatar billede supertekst Ekspert
06. december 2016 - 15:15 #12
Jeg tænker på, at lidt VBA-programmering kunne gøre noget af "det manuelle arbejde"
Avatar billede supertekst Ekspert
06. december 2016 - 15:19 #13
F.eks.:
Public Sub konverter()
Dim antalRæk As Long, ræk As Long
    antalRæk = ActiveCell.SpecialCells(xlLastCell).Row
   
    For ræk = 1 To antalRæk
        Range("B" & ræk) = Range("A" & ræk)
        Range("B" & ræk).Select
        Selection.NumberFormat = "#############"
    Next ræk
End Sub

Eksempler:
Rem 7,43E+12    --> 7427460000000
Rem 7,64433E+12 --> 7644332211553
Avatar billede ebea Ekspert
06. december 2016 - 15:32 #14
Må jeg spørge, om dine EAN numre, altid skal være 13 cifre, eller skal de være 15, med 2 Nuller foran, forstået på den måde, at hvis ikke der er Nuller i de indsatte, så tilføjes 2 Nuller, så resultatet blir' 15 cifre.
I så tilfælde, kan du bruge denne mulighed:  "00"#
Avatar billede Nikolaj_IP Juniormester
06. december 2016 - 15:48 #15
#13 Har ikke lige mulighed for at begive mig ud i en gang VBA lige nu, men kan da give det et skud i morgen evt. :)

#14 De kan være alverdens længder (overdrivelse) - se f.eks.: https://en.wikipedia.org/wiki/International_Article_Number
De kaldes også GTIN: https://en.wikipedia.org/wiki/Global_Trade_Item_Number
Deraf mit ønske om at Excel simpelthen bare holder op med at "behandle" de data, jeg indsætter. Der er f.eks. også nogle, der har et enkelt nul foran resten af EAN nummeret.
Avatar billede ebea Ekspert
06. december 2016 - 15:53 #16
#15  -  Jeg regnede med, at det var til brug her i Danmark, hvor cifre altid er 13.
Disse tal, er jo beregnet til at identificere brugerne af disse numre, og derfor den specifikke længde.
Samme system som du har med FI numre på indbetalingskort.

Men så har jeg ikke flere bud.
Avatar billede supertekst Ekspert
06. december 2016 - 16:20 #17
Ok #13 - er klar til næste "step"
Avatar billede Hestehat Seniormester
06. december 2016 - 19:48 #18
Hvis det er fordi du vil undgå at excel ændrer i din formattering, så kan det gøres ved at du skriver apostrof ' foran tallet. Så ændrer excel ikke i formatteringen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester