Wyodrębnij liczby po określonym słowie w komórce

0

Mam plik XLS, który zawiera setki różnych czasów, z których wszystkie są jednym ciągiem w jednej komórce, wszystkie w następującym formacie:

Days: 103, Hrs: 12, Mins: 15
Days: 34, Hrs: 8, Mins: 27
Days: 10, Hrs: 16, Mins: 4

Chcę uporządkować je według najwyższych do najniższych, a jeśli je posortuję, rekordy z godzinami w setkach zostaną wyświetlone przed wartościami w dziesiątkach. Na przykład powyższa lista uporządkowana od najwyższej do najniższej pokazuje jako:

Days: 34, Hrs: 8, Mins: 27
Days: 103, Hrs: 12, Mins: 15
Days: 10, Hrs: 16, Mins: 4

Chcę wypróbować każdą wartość liczbową i umieścić ją we własnej komórce, więc mam osobną kolumnę Dni, godziny i minuty, aby ułatwić sortowanie, ale wydaje mi się, że nie wiem, jak to zrobić. Czy ktoś może skierować mnie we właściwym kierunku?

Rawns
źródło
Mówisz, że Days: 34, Hrs: 8, Mins: 27istnieje w jednej komórce?
Dave
Tak, to pojedynczy łańcuch w pojedynczej komórce. (jest to wartość wyodrębniona z zewnętrznego systemu monitorowania).
Rawns,
Dla mnie jest to zadanie VBa. Masz doświadczenie w programowaniu, więc sugeruję napisanie potrzebnego skryptu VBa
Dave

Odpowiedzi:

3

Możesz użyć kombinacji funkcji wyszukiwania ciągów (MID, ZNAJDŹ i PRAWO), aby wyodrębnić różne komponenty do ich oddzielnych komórek.

Oto wynik końcowy:

wprowadź opis zdjęcia tutaj

Teraz formuły dla wiersza 2 (możesz przeciągnąć, aby wypełnić pozostałe wiersze):

Dni - komórka B2:

=MID(A2, LEN("Days: "), FIND(", Hrs:",A2)-LEN("Days: "))

Godziny - komórka C2:

=MID(A2,FIND(", Hrs: ",A2)+LEN(", Hrs: "), FIND(", Mins: ",A2)-FIND(", Hrs: ",A2)-LEN(", Hrs: "))

Minuty - komórka D2:

=RIGHT(A2, LEN(A2)-FIND(", Mins: ",A2)-LEN(", Mins: ")+1)

Atzmon
źródło
1

Musisz wykonać następujące kroki:

  1. Wybierz kolumnę zawierającą dane.

  2. Za pomocą Znajdź / zamień usuń tekst, na przykład:

Znajdź: Days: zamień:""

Znajdź: Hrs: zamień:""

Znajdź: Mins: zamień:""

Teraz twoje dane wyglądają jak:

    103, 12, 15
    34, 8, 27
    10, 16, 4
  1. Wybierz kolumnę.

  2. Idź do Dane -> tekst w kolumnach, otworzy się takie okno:

wprowadź opis zdjęcia tutaj

  1. Wybierz opcję Rozdzielany i przejdź do następnego kroku, który wygląda następująco:

wprowadź opis zdjęcia tutaj

Wybierz przecinek i postępuj zgodnie z instrukcjami.

  1. Teraz Twoje dane będą wyglądać następująco:

    | 103| 12| 15 |
    | 34 | 8 | 27 |
    | 10 | 16| 4  |
    

Każda wartość znajduje się w osobnej kolumnie.

jcbermu
źródło