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

Do until, hitta sluttiden på dagen


Hanna_M

Rekommendera Poster

Jag hoppas någon kunnig kan hjälpa mig med en formel att hitta sluttiden på min arbetsdag. 

 

Jag tror jag skulle vilja göra ett VBA, genom att loopa och använda mig av Do until. 

 

men jag har inte riktigt lärt mig detta ännu och vet inte vad som behövs

 

Jag har ett dokument bifogat nedan. 

 

i den lila rutan, L2

vill jag att den börjar leta i den blå rutan D24 och uppåt tills den hittar ett värde som inte är 0. 

Vilket då är de klockslag som dagen slutar. 

Detta är på denna dagen, tisdag grön ruta på D12. 

 

Så nästa dag ska de finnas en ny tolkning av detta av den dagens rader. o.s.v

 

Om de även gick få in att den då tar bort de rader som i dessa fall är gula efter att den hittat rätt värde vore jag väldigt tacksam. 

 

Tyvärr står de att jag inte får ladda upp Excelfilen, så fick bli en bild som även visar vad som just nu står i L2. 

Vill alltså att den fortfarande ska fungera på samma sätt men hitta sluttiden själv och inte att jag måste sätta den i D24 för att de ska funka. 

 

Hoppas nån har lust att gråtta sig in i mitt excel problem. :)

post-126884-0-60732100-1448202264_thumb.png

Länk till kommentar
Dela på andra webbplatser

Om det är en fil med VBA-kod i måste du lägga den i ett ZIP-arkiv för att få ladda upp den.

 

Första steget, hitta värde, kan formler lösa. Använd PASSA, leta efter nollvärde, hämta värdet på raden ovan den hittar med INDEX.

I stil med

=INDEX(D2:D24;PASSA(0;D2:D24;0)-1)

(PASSA = MATCH på engelsk Excel)

Dölja rader det får du antingen göra manuellt eller, som du säger, använda VBA.

 

Och enklaste där är nästan att lägga på ett autofilter och en formel som räknar ut om en rad ska vara synlig eller ej, att med autofiltret dölja de värden som inte ska synas. Låt formeln evaluera till Visa/dölj, enklare att hantera i VBA.

Länk till kommentar
Dela på andra webbplatser

Tack så hemskt mycket för hjälpen och att den var snabb. 
 

Jag får testa mig fram med autofilter, om de blir en bra ide för mig. 

Tack igen. :)

Länk till kommentar
Dela på andra webbplatser

Några timmar senare vid tangetbordet.  Tyvärr så verkar inte koden jag fick av dig fungera om jag själv raderar raderna som var gula, alltså 0 värderna. 

 

Är de så att jag måste ha kvar raderna och välja dölja manuellt eller genom nått filter och får inte radera raderna helt eftersom de då tappar formeln sin funktion?

Länk till kommentar
Dela på andra webbplatser

Skicka upp din bok, en variant av den, så kan jag ta en mer definitiv titt.

 

jag antar att du har de gula raderna eftersom du kan tänkas behöva dem.

Det går iofs att göra formlerna smartare och att du inte behöver reservera utrymma för timmar/rader du inte behöver, att du helt enkelt efterhand skriver in nytt datum när du når detta på den rad som är ledig.

 

Formeln borde greja om du raderar, den borde inte påverkas direkt i funktion som svar på din direkta fråga.

Länk till kommentar
Dela på andra webbplatser

jag fick inte ladda upp filen i sitt fulla format som var .xlsx

men fick ladda upp den som .xls

Hoppas de inte gör nån större skillnad på den. 

 

 

Jag har byggt dokumentet så att de finns dessa antal rader eftersom man aldrig vet hur lång en dag blir i olika ärenden. 

och vill ha så lite hantering som möjligt när de väl ska fyllas i.

 

Men nu när jag tar bort de gula raderna så försvinner formeln. 

 

Hoppas du hittar en lösning. 

 

 

.Tiden 2015.xls

Länk till kommentar
Dela på andra webbplatser

Att komma runt felvärdena är enkelt, radera inte sista raden som formlerna omsluter. Infoga en dummy-rad som du aldrig använder, som du aldrig tar bort. Eller rad du döljer.

 

 

Ett annat alternativ, om du är intresserad, är att, som sagt, bygga om så att du helt enkelt skriver in på ny rad när ny dag börjar, inte har fast utrymme för dagarna som nu.

Lite annorlunda formler med inte så farligt.

Men om att formlerna blir fel vid radering är enda problemet kanske vi ska nöja oss att lösa det?

Länk till kommentar
Dela på andra webbplatser

Även om jag tar bort alla rader utom sista raden som formeln omsluter så får jag ett formel fel. 

 

Kan man ändra något i formeln för att den ska fungera även om jag har tar bort några rader iaf, t.ex. som du tänkte där alla utom sista dagen.

De skulle vara okej. 

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