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

MAXA på versionsnummer


Stålior

Rekommendera Poster

Ska i ett excel-blad hålla reda på på vilka datorer och vilken version av ett program som finns installerad. För det matar jag in versionnummren och vill med hjälp av villkordsstyrd formatering markera alla, som har den senaste version, med grönt. T.ex. kan det stå:

2.05.01

3.02.06

3.02.04

För att få till den villkordsstyrda formateringen vill jag att MAXA ska returna 3.02.06 från ovanstående listning, men den returnerar 0. Att sortera fungerar däremot utan problem.

Så till min fråga: Hur ska jag göra för att få ut maxvärdet av ett antal versionsnummer på formen x.y.z så att jag kan använda det i en villkordsstyrd formatering?

 

Länk till kommentar
Dela på andra webbplatser

MAXA är lite lustigt beskriven. Så vitt jag kan förstå så kräver den "i princip" numeriska värden, oavsettt vad hjälpen säger.

 

Och det här är då den korta formelvarianten där vi förutsätter att det går att ta bort punkterna och få sifforna som fungerar för att få rätt ordning (borde fungera så länge folk verkligen använder 2 siffror mellan varje punkt)...

 

 

=(TEXTNUM(BYT.UT(A1;".";""))*1=MAXA(OM(LÄNGD($A$1:$A$55)>0;BYT.UT($A$1:$A$55;".";"")*1;0)))

 

 

Om du vet att det aldrig kommer att finnas tomma celler så kan du skippa "om" vilkoret

 

Eventuellt skulle det kunna gå att använda TEXT för att få hanterbara siffror, men de "fuckar upp" om det finns tomma celler.

 

/tjenis

 

Länk till kommentar
Dela på andra webbplatser

Hej,

 

Texter kan jämföras mha de logiska operatorerna (>,<,=) och ihop med en matrisformel verkar det fungera som du vill.

 

Lägg in följande formel i villkorsstyrd formatering för cell A1 och välj lämplig formatering.

=OCH(A1>=$A$1:$A$3)

A1:A3 är listan som A1 ska jämföras med.

Kopiera sedan formatet för A1 till övriga celler i listan så kommer det värde i listan som är störst att markeras.

 

mvh

/Johan

 

Länk till kommentar
Dela på andra webbplatser

Jag gjorde inte exakt som du skrev, men du satte mig på rätt väg för den lösning jag gjorde.

Tack och poäng.

 

Länk till kommentar
Dela på andra webbplatser

Väldigt snygg lösning, som tyvärr inte verkar fungera på Excel 2000, men fungerar bra på 2003. Självklart så är det när jag bara har tillgång till 2000 som jag behövde detta, men en så enkel och fin lösning förtjänar ändå poäng.

 

Länk till kommentar
Dela på andra webbplatser

Hej, jag testade Pejos lösning med excel 2000. Verkar fungera här i alla fall, märkligt... (excel 2000 sp3).

Sen måste jag erkänna att jag inte fixar logiken bakom "och:et" till 100%. Men Matrisformler kräver ju ett annorlunda tänk och det fungerar uppenbarligen...

 

Länk till kommentar
Dela på andra webbplatser

Då måste det vara jag som gör fel, brukar ofta vara det. Får det inte att fungera nu när jag sitter med Excel 2000 sp3.

 

OCH behövs för att den ska kontrollera om versionsnummret är större än lika med alla nummer i listan. Utan OCH fungerar det som eller, alltså kontrollerar om versionsnummret är större än lika med något nummer i listan. Åtminstone fungerade det så när jag fick det att fungera med Excel 2003.

 

Länk till kommentar
Dela på andra webbplatser

Ja, det var jag som hade gjort någonting fel. Har ingen aning om vad dock, men nu fungerar det alldeles perfekt.

 

För att citera en gul, fet och tunnhårig person: DOH!

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...