PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerExcelExcelRäkna ut dagar per månad med variabler för start/sluttidRäkna ut dagar per månad med variabler för start/sluttid
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2015-12-07 10:05
 
 Ändrad av Frelun  på 2015-12-07 11:07:47

  Hej alla, 


Ny på forumet och med ett problem jag ej kommer runt. Jag försöker skapa ett worksheet för att räkna antal dygn per månad, för olika vårdformer, där det under månaden kan förekomma ändring av vårdform. Jag har (bara) lyckats klura ut hur man gör om en person har obruten vårdform hela månaden.

När man blandar in byte av vårdform under period eller att en person blivit utskriven under perioden.....står jag helt handfallen. Se nedan för visualiering av worksheet. Exemplet gäller november månad. F-H är svarskolumner och talen inom parenteserna är de svar som skall räknas ut. 
                                                                                                                                                       

   a           b                   c                    d                    e                f                  g                   h                

namn    vårdform 1   vårdform 2  vårdform 3    utskriven  dagar vf-1  dagar vf-2  dagar vf-3

person 1   15-11-01                                               15-11-21      (21)

person 2   15-11-01    15-11-11                                                 (10)           (20)

person 3   15-11-01    15-11-11                           15-11-15      (10)             (5)

person 4   15-10-15                                                                    (30)

person 5                        15-11-01                                                                  (30)

person 6                        15-11-11    15-11-01                                               (20)       (10)

 

Med datedif  "md" räknas antal dagar efter fullbordad månad, så det fungerar ju gott att använda inskrivningsdatumet som startdatum även om en del personer har varit inskrivna flera år. Inskrivningsdatumet kan skrivas in på vilken VF som helst, beroende på vilken VF person läggs in på.

Däremot gällande slutdatum och brytdatum, där har jag ingen aning hur jag ska få det att funka. T.ex i fallet om en person har blivit utskriven, då blir ju utskrivningsdatumet slutdatum, inte månadens sista dag. I fallen där VF ändras under månadens gång, hur gör man brytdatumet till slutdatum för första VF och brytdatumet till startdatum för det nya VF?

Hur formulerar man enklast slutdatumet för Datedif? Kan man på något enkelt sätt switcha mellan att använda TODAY (för att vid vilket givet tillfälle få fram vårddygn vid dagens datum) och andra alternativet ha månadens sista dag som slutdatum?

Viktigaste frågan av alla, som kanske borde ha ställts innan ni tvingats läsa allt detta... Är det ens möjligt att få till ett sådant här worksheet?

Tacksam för svar då det skulle minska min administration kopiöst!

Nytt inlägg
 2015-12-07 14:14
 

 Lika bra att säga det själv, innan det påpekas.. :)

Jag hade fel om datedif "md", det räknar ju såklart bara bort månaderna och lämnar kvar det antal dagar som kvarstår mellan "a" och "b". Så detta hjälper ju således mig inte.

Tips och ideer mottages gärna!

Nytt inlägg
 2015-12-08 20:11
 

Jag tror att jag missförstår dig, men men.

Hur vet du vilken månad det gäller? Står det någonstans eller är det den här månaden?

Nåja, sista dagen i den här månaden får du fram så här:

=SLUTMÅNAD(IDAG();0)

Eller så här om vi antar att det står ett datum i cell I1 som tillhör månaden du är intresserad av:

=SLUTMÅNAD(I1;0)

För vårdform1 kan du då få reda på det "Första" möjliga slutdatumet under månaden genom att leta rätt på det tidigaste (minsta) datumet av månadsslut, utskrivning eller någon annan vårdfrom

Dvs

=MIN(C2;D2;E2;SLUTMÅNAD($I$1;0))

Tyvärr sktier det sig om det har skett ett byta tidigare i månaden, så istället måste du först hitta det minsta datumet som är större än datumet i B2 innan du jämför det med månadsslut och utskrivning

först tar du reda på om det finns några större

=ANTAL.OM($B3:$D3;">"&B3)

och returnerar det näst största

=OMFEL(STÖRSTA($B2:$D2;ANTAL.OM($B2:$D2;">"&B2));99999999)

(999999999 är bara för att vi måste returnera ett tal om inget datum upfyller kraven och 999999 är större än datumen vi kan få fram)

och vår en gång snygga formel för slutdatum blir nu

=MIN(OMFEL(STÖRSTA($B2:$D2;ANTAL.OM($B2:$D2;">"&B2));99999999999);SLUTMÅNAD($I$1;0);$E2)

blä:-(

På samma sätt skulle du kunna ta första dagen i månaden om VF startade innan månadsskiftet:

Första dagen i månaden får du så här:

SLUTMÅNAD($I$1;-1)+1

och så här kollar du om det är värdet i B2 eller första dagen i månaden

=MAX(B2;SLUTMÅNAD($I$1;-1)+1)

Och eftersom du av någon anledning vill använda DATEDIF (slutdatum-statdatum är lika enkelt om man vill ha dagar och man slipper använda en odukumenterad funtion). så blir formeln

=DATEDIF(MAX(B2;SLUTMÅNAD($I$1;-1)+1);MIN(OMFEL(STÖRSTA($B2:$D2;ANTAL.OM($B2:$D2;">"&B2));99999999999);SLUTMÅNAD($I$1;0);$E2);"d")

och för att slippa se något om B2 är tomt:

=OM(ÄRTOM(B2);"";DATEDIF(MAX(B2;SLUTMÅNAD($I$1;-1)+1);MIN(OMFEL(STÖRSTA($B2:$D2;ANTAL.OM($B2:$D2;">"&B2));99999999999);SLUTMÅNAD($I$1;0);$E2);"d"))

Den här formeln står i F2, Kopiera ner det till de andra cellerna.

PS, jag hamnar en dag fel, kolla del-formlerna för att se vad jag gör tokigt.

 

Nytt inlägg
 2015-12-10 08:54
 
 Ändrad av Frelun  på 2015-12-10 10:31:00

 Hej!

Först och främst, jättetack för svar! Nu ska jag bara försöka förstå svaret och se om jag får det att fungera. Lite osäker på om jag förstår hur formeln skall sättas in, men med lite trial and error ska det nog lösa sig :)  Annars lär jag återkomma med fler frågor.

På frågan vilken månad som det gäller, tanken är ju att varje månad kunna ta fram vårddygnen för den gångna månaden. Det sker ju -efter- månaden har passerat, t.ex början av Dec kollar jag av hur vårddygnen i Nov har varit fördelade. Det får mig undra över "idag", använder jag "idag" så sätter det väl månaden till december? Kanske jag misstolkar det?


Nu är det lite rörigt i mitt lilla huvud med, men om man bara har ett inskrivningsdatum, på ett av de olika vårdformerna, men att personen ej är utskriven eller har bytt vårdform, DÅ sätter din formel slutdatumet till den sista dagen i månaden?

Fredrik

Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelRäkna ut dagar per månad med variabler för start/sluttidRäkna ut dagar per månad med variabler för start/sluttid

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter