Google sheets - Formel hjælp

#1| 0

Hej :-)

jeg har brug for hjælp til en formel der kan spotte tekst / tal i en celle og outputte ny tekst i angiven celle.


Helt konkret er det datoer det drejer sig. Hvis der f.eks. står 01/2021 i en celle skal der stå Slut Jan. 2021 i cellen ved siden af.

 

Hvad jeg selv har kunne arbejde mig frem til er følgende:

=Arrayformula(if(len(A1:A), IF(REGEXMATCH(A1:A, "01/2021"), "Slut Jan. 2021", IF(REGEXMATCH(A1:A, "02/2021"), "Slut Feb. 2021", )),))

Den virker til og med 04/2021 (I første omgang er det til og med 12/2021 den skal virke) men efter det spytter den fejl ud. Er der en mere elegant måde at løse dette på?

På forhånd tak for hjælp og forslag :-)

 

Redigeret af Miwala d. 10-12-2020 14:19
10-12-2020 15:39 #2| 0

Umiddelbart burde denne formel kunne læse det såfremt din dato står i kolonne A


="Slut" &" "& TEKST(VENSTRE(A1;2);"mmm")&" "&HØJRE(A1;4)

10-12-2020 15:58 #3| 0
OP
toganim skrev:

Umiddelbart burde denne formel kunne læse det såfremt din dato står i kolonne A


="Slut" &" "& TEKST(VENSTRE(A1;2);"mmm")&" "&HØJRE(A1;4)

 

 Desværre ikke helt. 


Anvendt f.eks. på en celle der indeholder "ETA: END 01/2021" bliver resultatet: "Slut ET 2021" og ikke "Slut Jan. 2021"



10-12-2020 16:08 #4| 0

Dine eksempler var 01/2024, 04/2021 og 12/2021. Ret relevant du har anden format :) kan du liste de eksempler du har?

10-12-2020 16:16 #5| 0
OP

Kan godt se at mit eksempel måske er lidt skidt formuleret :-)

 

Input celler kan se ud som følgende:

ETA: END 01/2021

ETA: MID 02/2021

ETA: MID 03/2021

ETA: EARLY 04/2021

ETA: MID 05/2021

ETA: MID 06/2021

ETA: MID 07/2021

ETA: MID 08/2021

ETA: MID 09/2021

ETA: END 10/2021

ETA: END 11/2021

ETA: MID 12/2021

Start tekst vil altid være ETA: men det kan følges op af EARLY / MID / END og så MÅNED / ÅR i XX/XXXX format.

Den formel jeg bruger i min første post gør at hvis der står 01/2021 i en celle skrives der "Slut Jan. 2021" i den nye celle. Og det er uanset hvad der har stået foran 01/2021 (EARLY / MID / END)

Denne formel kan jeg få til at virke på/med 01/2021 , 02/2021 , 03/2021 , 04/2021, men derefter får jeg error og ved ikke om det er mig der laver fejl eller om formlen ikke kan være større.

Redigeret af Miwala d. 10-12-2020 16:16
10-12-2020 16:28 #6| 1

I det tilfælde ville jeg nok bruge en mellemregning: 


=højre(a2;7) 

Det vil give 01/2021, 02/2021 etc.
Og så kan du bruge min formel


10-12-2020 16:31 #7| 0
OP

Nå, tror det lykkes mig alligevel... Må have haft fede fingre da jeg prøvede første gang for nu gik det bare at gentage formlen så mange gange som jeg havde brug for.

Men kønt er det ikke så hvis nogle stadig har forslag til en mere enkelt løsning tager jeg gerne i mod :-)

=Arrayformula(if(len(A1:A), IF(REGEXMATCH(A1:A, "01/2021"), "Slut Jan. 2021", IF(REGEXMATCH(A1:A, "02/2021"), "Slut Feb. 2021", IF(REGEXMATCH(A1:A, "03/2021"), "Slut Marts 2021", IF(REGEXMATCH(A1:A, "04/2021"), "Slut April 2021", IF(REGEXMATCH(A1:A, "05/2021"), "Slut Maj 2021", IF(REGEXMATCH(A1:A, "06/2021"), "Slut Juni 2021", IF(REGEXMATCH(A1:A, "07/2021"), "Slut Juli 2021", IF(REGEXMATCH(A1:A, "08/2021"), "Slut Aug. 2021", IF(REGEXMATCH(A1:A, "09/2021"), "Slut Sep. 2021", IF(REGEXMATCH(A1:A, "10/2021"), "Slut Okt. 2021", IF(REGEXMATCH(A1:A, "11/2021"), "Slut Nov. 2021", IF(REGEXMATCH(A1:A, "12/2021"), "Slut Dec. 2021",)))))))))))),))

Redigeret af Miwala d. 10-12-2020 16:31
10-12-2020 16:31 #8| 0
OP

@toganim

 

Tak for dine indspark/hjælp :-)

10-12-2020 16:31 #9| 0

Min kan stadig bruges. Hvis du ikke vil have en mellemregning et sted kan du implementere mellemregningen i formlen 

10-12-2020 16:39 #10| 0
OP
toganim skrev:

Min kan stadig bruges. Hvis du ikke vil have en mellemregning et sted kan du implementere mellemregningen i formlen 

 

 Men hvordan får jeg så månederne med...? Altså så 01/2021 bliver til Slut Jan. 2021 osv...

10-12-2020 18:52 #11| 1

Okay, den var lidt mere langhåret end jeg havde husket. Jeg havde desværre overset at 1-12 alle korresponderer til januar og ikke til hhv. jan,feb, mar etc. Det er løst ved at gange tallet med 29 da man så får den respektive måned. 


Så den lidt grimme formel ser således ud (i B2, hvor dit ETA END 01/2021 står i celle A1)

 

="Slut" &" "& TEKST(VENSTRE(HØJRE(A1;7);2)*29;"mmm")&" "&HØJRE(A1;4)

 

Ser således ud i excel:

 

Alternativt kunne man lave et lopslag i en liste hvor 01= jan, 02=feb etc. men dette er uden mellemregninger/lister andre steder.

 

Den kunne nok være kønnere men lader til at virke

11-12-2020 17:53 #12| 0
OP

Det virkede :-) Fremragende og "simpel" i forhold til min :-)

← Gå til forumoversigtenGå til toppen ↑
Skriv et svar