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

Excel - Filtrera/sortera ut sjusiffrigt nummer

Rekommendera Poster

alexander_greis

Hej,

 

I mitt arbete sammanställer jag arbetade timmar kopplade till sjusiffriga arbetsordernummer. Resursen som registrerar sina arbeta timmar anger en anmärkning till den registrerade arbetstiden, dvs. arbetsordernumret. Alla anmärkningar ser inte lika ut av olika orsaker. Till råga på detta lägger tidsregistreringprogrammet till ytterligare text och siffror. Se nedan vad jag menar och vilken lösning jag söker.

 

txtDatum tblBeskrivning tblAntal tblAnmarkning tblSign
210211 MANTIMMAR 8,0 07:00-16:00, rast 11:30-12:30 | 3435026 Klar yngve
210208 MANTIMMAR 1,0 10:00-11:00, rast 11:30-12:30 | AO 3401806 sören
210204 MANTIMMAR 4,0 11:00-16:00, rast 11:30-12:30 | 350007 tekniker eva
210202 MANTIMMAR 8,0 07:00-16:00, rast 11:30-12:30 sixten
210201 MANTIMMAR 8,0 07:00-16:00, rast 11:30-12:30 | H sara
210201 MANTIMMAR 8,0 07:00-16:00, rast 11:30-12:30 | Permittering berit

 

Det jag skulle vilja göra av denna tabell är att radera allt utom det sjusiffriga numret i kolumn "tblAnmärkning".

 

Ovan exempel är ett axplock av det antal rader jag hanterar. Finns det något snabbt och enkelt sätt att utföra detta?

 

Framledes kommer naturligtvis anmärkningar ske på ett enat sätt men tidsspannet i samma kolumn kommer inte kunna ändras raderas, det måste finnas av andra orsaker, därför behöver jag hjälp att sortera/radera.

 

Har sökt febrilt på Goolge men hittar inget, åtminstone inget jag förstår och kanske för att jag inte ställer rätt fråga.

 

Tilläggas ska att jag inte är väldigt van med Excel, har inte arbetat i det särskilt mycket. Har någon en lösning så uppskattar jag enormt om det förklaras väl :)

 

/Alex

 

 

Dela detta inlägg


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

Automatiskt leta efter mönster.

Infoga en tom kolumn direkt till höger om tblAnmarkning

Skapa "rätt svar" för några rader som korrekta exempel some excel kan lära av. Det skall helst vara så olika rader som möjligt. Från ditt exempel:

 

tblAnmarkning rätt svar
07:00-16:00, rast 11:30-12:30 | 3435026 Klar 3435026
10:00-11:00, rast 11:30-12:30 | AO 3401806 3401806
11:00-16:00, rast 11:30-12:30 | 350007 tekniker 350007
07:00-16:00, rast 11:30-12:30  
07:00-16:00, rast 11:30-12:30 | H  
07:00-16:00, rast 11:30-12:30 | Permittering  

 

Markerar den nya kolumnen (3435026 till sista raden, inklusive icke ifyllda)

Tryck CTRL+E för att autofylla med de regler Excels har gissat fram utifrån dina korrekta svar.

Om du är extremt tursam så har excel fattat mönstret och hämtar ut precis det du vill. I dina exempelrader var det inte tillräckligt tydligt och excel gissar helt fel. Det kan funka om du har fler exempel men du måste alltid dubbelkolla

 

 

Alternativt kan du skapa en manuell regel. Du som ser originalfilen. Skulle en regel i stil med "alla siffror till höger om tecknet "|" " funka?

 

Formler (lite fyrkantig logik)

Den här slår samman alla siffror den hittar till höger om "|"

=OMFEL(SAMMAN(OMFEL(EXTEXT(D2;SEKVENS(LÄNGD(D2);;SÖK("|";D2);1);1)*1;""))*1;"")

Längre formel som möjligtvis är lite effektivare om du har jättefiler:

=OMFEL(SAMMAN(OMFEL(EXTEXT(D2;SEKVENS(LÄNGD(D2)-SÖK("|";D2)+1;;SÖK("|";D2);1);1)*1;""))*1;"")

 

Den här har lite annorlunda logik och är kanske mer/mindre beräkningskrävande. Hittar den första siffran till höger om "|" och tar  7 tecken f.o.m  den siffran

=OMFEL(1*EXTEXT(D2;MIN(OMFEL(SÖK({0,1,2,3,4,5,6,7,8,9};D2;SÖK("| ";D2));""));7);"")

Kopiera ner formeln så långt det behövs

 

Power Query (förmodligen det enklaste om du inte är van vid formler )

Ställ dig i din tabell och gå till

Data->Hämta och transformera data->från tabell/intervall

[skapa tabell], se till att "tabellen innehåller rubriker" är ikryssad

Markera kolumnen tblAnmarkning

Lägg till kolumn->extrahera: "text efter avgränsare"

skriv in | som avgränsare

Nu får du en ny kolumn med all text efter avgränsaren

 

Sen får du trixa lite

Markera din nya kolumn (Text efter avgränsare)

Transformera->dela upp kolumn: efter icke siffra till siffra

Markera din nyaste kolumn (den med sifforna) och kör en gång till

Transformera->dela upp kolumn: efter icke siffra till siffra

Nu borde du ha en kolumn med bara siffror.

Radera skräpkolumnerna

Ge kolumnen med siffror ett vettigt namn, typ "arbetsordernummer"

Högerklicka på kolumnen och kör: 

Ändra typ->heltal

 

Start->[stäng och läs in]

När du skapade den nya tabellen så spelade excel in vad du gjorde. Den ny tabellen som skapades är kopplad till din gamla med dina arbetssteg bevarande. Så om du fyller på nya rader i gamla tabellen så kan du högerklicka i den nya tabellen och välja "Uppdatera". Då kör den hela omvandlingen automagiskt

Redigerad av MH_

Dela detta inlägg


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

Och om man inte bryr sig om att det skall vara begripligt så är den här rätt snygg. Det största 7 siffriga talet efter |:

=MÄNGD(14;7;1*EXTEXT(D2;SEKVENS(;LÄNGD(D2)-SÖK("|";D2)+1;SÖK("|";D2));7);1)

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