2012-04-16 20:39:25 +0000 2012-04-16 20:39:25 +0000
121
121

Dlaczego Excel traktuje długie ciągi liczbowe jako notację naukową nawet po zmianie formatu komórek na tekst

Próbuję przetworzyć niektóre dane w Excelu. Dane te zawierają numery kont numerycznych i inne długie ciągi liczbowe (np. MEIDy telefonów komórkowych). Nie wykonuję operacji matematycznych na tych łańcuchach, więc chcę, aby Excel traktował je jako zwykły tekst.

Oto, co mnie oszukuje (to jest Excel 2010):

  1. Weź długi numer jak 1240800388917 i wklej go do komórki w nowym arkuszu roboczym.
  2. Domyślny format komórki programu Excel jest ogólny, więc łańcuch jest przedstawiony w notacji naukowej jako 1.2408E+12
  3. Kliknij prawym przyciskiem myszy na komórkę, wybierz Format Komórek, ustaw format na Tekst

Komórka jest nadal wyświetlana w notacji naukowej, nawet jeśli format został ustawiony na tekst.

Teraz, jeśli wykonam kroki w innej kolejności:

  1. Formatuj pustą komórkę jako tekst. Kliknij prawym przyciskiem myszy na komórkę, wybierz Formatuj komórki, ustaw format na Tekst
  2. Weź długi numer jak 1240800388917 i wklej go do komórki sformatowanej jako tekst

Teraz komórka jest wyświetlana jako ciąg znaków, a nie w notacji naukowej.

Wyniki pozostają w notacji naukowej, mimo że komórka jest sformatowana jako tekst tylko wydaje mi się złamana. Widziałem sugerowane sposoby pracy, takie jak: użycie importu CSV i ustawienie formatu na tekst, dodanie znaku spacji na początku każdego ciągu liczbowego i inne.

Czy jest prosta dobra praca, aby łatwo utrzymać te ciągi sformatowane jako tekst?

Dlaczego u licha Excel to robi?

Powiązane pytania SU, które znalazłem Jak możesz sprawić, aby Excel 2007 przestał formatować duże liczby w notacji naukowej? i Czy to zachowanie Excela z dużą liczbą sześciokątną jest oczekiwane?

Odpowiedzi (13)

171
171
171
2014-07-23 10:53:47 +0000

Zadziałało to dla mnie w programie Excel 2010. Wystarczy wybrać kolumnę, kliknąć prawym przyciskiem myszy, Formatuj komórki, Niestandardowe i wybrać opcję, która mówi 0 (druga opcja poniżej Ogólne).

23
23
23
2012-04-16 23:45:51 +0000

Ach, wspomnienia o danych, które wracają z czasów, gdy robiłem kilka ogromnych liczb sprawdzania krzyżowego w Excelu (nigdy więcej)… Kiedy uderzyć w długie ciągi liczbowe w Excelu, spróbuj powiedzieć, 12345678901234567890 (20 cyfr), Excel będzie ogólnie convert to dla Ciebie, co oznacza, że 20 cyfr numer, który właśnie podsłuchałeś został wycięty tylko około piętnastu znaczących cyfr.

Uwaga, jak również: konwersja jest skrócenie, w przeciwieństwie do zaokrąglania. (12345678901234567890 jest 1.2345678901234 6 E+19, ale excel pokaże Ci 1.2345678901234 5 E+19)

Występuje to w punkcie wejścia, więc gdy jest w, każdy dodatkowy szczegół jest stracone, a więc nawet jeśli powiesz Excel, że naprawdę miałeś na myśli, że to był tekst, a nie liczba, jesteś trochę nie na szczęście, a więc dlaczego Twoja pierwsza sekwencja nie działa.

13
13
13
2012-09-28 16:44:58 +0000

Stwierdziłem, że w Office 2010, jeśli najpierw sformatujesz kolumnę, a następnie wklejisz dane, to pokaże ona duże liczby poprawnie.

13
13
13
2012-04-16 21:01:00 +0000

Pojedynczy apostrof ‘ przed numerem zmusi program Excel do traktowania numeru jako tekstu (łącznie z domyślnym lewym wyrównaniem). A jeśli masz błędy zaznaczone, to pojawi się jako liczba zapisana jako błąd tekstowy w komórce.

12
12
12
2013-07-05 07:44:11 +0000

Spróbuj tego… to działa dla mnie, Excel 2013.

=""&a1

gdzie a1 posiada wartość liczbową. Po, skopiuj kolumnę i wklej do oryginalnej kolumny.

6
6
6
2016-11-03 17:38:40 +0000

Zdaję sobie sprawę z wieku pytania, ale to jest to, które wylądowałem po wyszukiwaniu w google i które nie odpowiedziało na moje pytanie (dlaczego formatowanie jako tekst nie działa i dlaczego numer jest obcięty do 15 cyfr po sformatowaniu do tekstu).

Krótka odpowiedź brzmi: nie możesz pracować na swoim numerze tak jak lubisz PO wprowadzeniu wartości liczbowej i stuknięciu Enter. W momencie gdy to zrobisz, numer zostanie obcięty do 15 cyfr i zaprezentowany jako wykładniczy.

To nie jest błąd, to cecha.

Wszystko, co zrobisz po tym będzie używać obciętej wartości, więc żadna sztuczka formatowania nie pomoże. Możesz jednak użyć opcji Text to columns, aby przekonwertować notację wykładniczą na tekst (kliknij nagłówek kolumny, kliknij Text to data, następnie Delimited, Next, odznacz wszystkie pola delimiter, wybierz Text w Column data format, a następnie Finish), aby wartości zostały przekonwertowane na tekst i natychmiast wyświetlone jako 15-cyfrowa liczba. Ale będzie to tylko 15 cyfr, więc jeśli miałeś dłuższy numer, reszta jest stracona.

Aby mieć numer w arkuszu kalkulacyjnym dokładnie w sposób, w jaki go wpisałeś musisz go zapisać jako tekst. Musisz więc poprzedzić go apostrofem lub sformatować komórki jako tekst przed wpisaniem/kopiowaniem wartości do niego. Jeśli “czasami nie działa”, to, przepraszam, albo robisz coś złego, albo masz jakiś autokorekta (jeśli używasz apostrofu i dużej liczby >15 cyfr, Excel traktuje to jako niewłaściwą wartość i flagi komórki z ostrzeżeniem, więc ta uwaga nie jest osobista ani krytyka).

Innym sposobem, aby zrobić to w liczbach zbiorczych jest import wartości z pliku tekstowego. Śmiem twierdzić, że jest to jedyny sposób na większość sytuacji. I upewnij się, że importujesz plik, a nie tylko go otwierasz, ponieważ Excel traktuje typ csv jak swój rodzimy format i oczywiście przycina duże liczby do 15 cyfr.

Teraz, do ostatniego wydania. Jeśli wpiszesz dużą wartość liczbową w komórce programu Excel sformatowanej jako tekst, będzie ona nadal wyświetlana w notacji naukowej tak długo, jak długo komórka nie będzie wystarczająco szeroka. Jest to irytujące, ale efekt uboczny niektórych wewnętrznych algorytmów Excela. Wystarczy rozszerzyć komórkę, a zobaczysz pełną wartość za każdym razem.

5
5
5
2014-07-02 15:02:30 +0000

Możesz formatować komórki jako niestandardowe > #

Można to zastosować po wklejeniu danych do kolumny, ale musisz to zrobić przed zapisaniem arkusza kalkulacyjnego.

Dużo pracuję z kodami kreskowymi (UPC) i excel domyślnie sformatuje je jako notację naukową. Doprowadza mnie to do szaleństwa! Dlaczego nie jest to opcja, której nigdy się nie dowiem.

3
3
3
2013-08-14 22:15:18 +0000

Excel 2010: To działa po jednej kolumnie na raz, a nie po kolei. Wybierz kolumnę lub podzbiór kolumny, z zakładki Dane wybierz “Tekst do kolumn”, a następnie przeskocz w prawo do “Zakończ”. Koniec z naukową notacją.

Zgadzam się z wieloma użytkownikami Excela, to przestępstwo, że nie ma opcji, aby zapobiec naukowej notacji!

1
1
1
2018-02-28 21:47:55 +0000

Excel jest frustrujący dla pracy z danymi CSV/bulk w ten sposób. Pracuj z LibreOffice, jeśli to możliwe, nie robi tego, to znaczy, jeśli otworzysz ten sam arkusz (.xlsx) w LibreOffice, duże “liczby”, które są w rzeczywistości łańcuchami, nie są wyświetlane w naukowej notacji (co jest absurdalną decyzją Excela). Wierność pliku LibreOffice jest świetna: otwórz ten sam arkusz (.xlsx) w programie Excel ponownie, a notacja naukowa natychmiast “działa” jak zwykle.

1
1
1
2015-10-21 19:48:37 +0000

W programie Excel 2013, to samo stało się ze mną i po prostu poszedłem do Format Cells -> Number then upewniłem się, że miejsce dziesiętne jest ustawione na “0”.

0
0
0
2013-09-27 18:39:24 +0000
  1. Pole problemu kopiowania/wklejania do nowego arkusza w kolumnie A

  2. Skopiuj/wklej kolumnę A do pliku tekstowego

  3. Formatuj kolumnę B na tekst i wklej plik tekstowy do kolumny B

  4. W kolumnie C:

  5. Przekształć kolumnę C na format liczbowy bez części dziesiętnych

  6. Kopiuj/wklej kolumnę C do pliku tekstowego

  7. Formatuj kolumnę D na tekst i wklej do kolumny D

  8. W kolumnie E:

  9. Skopiuj/wklej kolumnę E do notatnika

  10. Usuń dane w problemowym polu i sformatuj kolumnę do tekstu

  11. Skopiuj/wklej dane z pliku tekstowego do problemowego pola

0
0
0
2014-01-28 22:58:15 +0000

Zadziałało to dla mnie w programie Excel 2013, włącznie z kopiowaniem komórek do innych programów. Filtrowanie danych pomogło, zwłaszcza w etapach edycji.

  1. Wybierz żądaną komórkę (komórki).
  2. Zastosuj Format Numeru “Tekst”. (Spróbuj Alt, H, N, a następnie “Tekst”)

Następnie, dla każdej z wybranych komórek:

  1. Wejdź w tryb edycji. (Spróbuj F2.)
  2. Potwierdź edycję klawiszem Enter (dobry dla kolumn) lub Tab (dobry dla wierszy). Nie zmieniaj zawartości.

Twój numer pojawi się normalnie, nawet po 100 cyfrach. =)

0
0
0
2012-04-17 05:40:42 +0000

Zaznacz wszystkie komórki - lub, dla ułatwienia, zaznacz cały arkusz kalkulacyjny i kliknij przycisk Format Komórki, a następnie Text.

Automatycznie cały arkusz kalkulacyjny będzie używał tekstu. Nie musisz tego robić komórka po komórce.