Funkcja Excela do obliczania całkowitego czasu spędzonego

0

Mam arkusz programu Excel, w którym w niektórych kolumnach mam komórki typu integer,integerMlub integer,integerH, na przykład 1,30mlub 5,2H. Dla całej kolumny chciałbym uzyskać wyrażenie sprawdzające dla każdej komórki kolumny, czy w drugiej liczbie całkowitej znajdują się H(godziny) lub m(minuty), i w takim przypadku oblicza całkowitą liczbę godzin (wartość zmiennoprzecinkowa) dla wszystkich tych drugich liczby całkowite w kolumnie.

Na przykład, jeśli mamy jedną kolumnę z czterema komórkami:

1,30m
5,2H
3,20m
4,1H

Łączna suma wynosiłaby:

30m + 2H + 20m + 1H = 0.5 + 2 + 0.33333 + 1 = 3.83333 H

Jak można to zrobić?

Otwórz drogę
źródło
Czy potrzebujesz komórek, które musisz pozostać w tym formacie?
Raystafarian

Odpowiedzi:

3

Załóżmy, że twoja pierwsza komórka to A2 i możesz umieścić obliczenia w dowolnej kolumnie po prawej stronie.

  • B2: =MID(A2,SEARCH(",",A2)+1,99)(znajduje rzeczy po przecinku)
  • C2: =VALUE(LEFT(B2,LEN(B2)-1))(wyodrębnia liczbę przed „h” lub „m”)
  • D2: =LOWER(RIGHT(B2,1))(wyodrębnia „h” lub „m”) (chociaż nie potrzebujesz LOWER- patrz komentarz Scotta)
  • E2: =IF(D2="m",C2/60,IF(D2="h",C2,""))(oblicza liczbę godzin)

Następnie możesz zsumować kolumnę E.

Możesz umieścić to w jednej komórce i mieć długą formułę, ale łatwiej jest debugować i zapisać powtarzanie się w formule.

benshepherd
źródło
Cześć, to nie działa dla mnie, czy mógłbyś podać przykład kolumny, w której to działa dla Ciebie?
Otwórz drogę
Który bit nie działa?
benshepherd
1
Twoja odpowiedź wydaje się działać dobrze, ale możesz ją trochę uprościć, usuwając LOWER()- porównanie tekstu w programie Excel nie rozróżnia wielkości liter, chyba że używasz EXACT().
Scott
Ach - nie zdawałem sobie z tego sprawy - dzięki! Nigdy o tym nie słyszałem EXACT(). Każdy dzień jest
schoolday
0

Odpowiedź benshepherda jest dobra, +1 ode mnie. Jeśli chciałeś zmienić konfigurację danych, pomyślałem, że zostawię inną odpowiedź, która może być przydatna dla kogoś.

  • Najpierw zrobię tekst do kolumn na karcie danych , oddzielonych znakiem,
  • Następnie wyrównam komórki po prawej stronie hi mzrobię kolejny tekst do kolumn o stałej szerokości, przeciągając znaki nienumeryczne do następnej komórki.
  • Następnie, w czwartej kolumnie, mógłbym użyć wzoru podobnego =IF(C1="h",B1,IF(C1="m",B1/60,0))i zsumować tę kolumnę
Raystafarian
źródło