Mam prawdziwy problem z programem Excel w plikach CSV, w którym formatuje on liczby w określony sposób i nie mogę uzyskać programu Excel do prawidłowego wyświetlania danych bez względu na to, co robię.
Wyobraź sobie, że mam colum o nazwie „Product Reference”. W tej kolumnie mam wiele identyfikatorów tego typu:
- 001145
- 55666
- 02133
Ilekroć otwieram plik Excel, formatuje te liczby, aby były:
- 1145
- 55666
- 2133
Co jest całkowicie błędne. Po podświetleniu kolumny i sformatowaniu jej jako tekstu poprzednie 0 na początku liczb nie zwracają się.
Próbując rozwiązać ten problem, najpierw uczyniłem plik csv plikiem tekstowym, a następnie zaimportowałem plik do programu Excel i konkretnie powiedziałem mu, aby nie formatował liczb, ustawiając format tekstu w imporcie, ale nadal formatuje liczby po zamknięciu i otwórz go ponownie, ponieważ csv nie może zdefiniować typów, więc program Excel automatycznie zapisuje plik jako czysty śmieci.
Czy ktoś znalazł sposób na obejście tego i mógłby mi pomóc?
Dzięki,
Odpowiedzi:
Musisz określić w pliku csv, że jest to tekst. Robisz to, umieszczając swój numer w cudzysłowie i poprzedzając go znakiem równości, np .:
Najprostszym sposobem na to byłoby zrobić to znaleźć zamień na
,
z",="
zastępując końca linii (może trzeba użyć zaawansowanego edytora jak Notepad ++ do tego) z"\r\n="
i robi początek i koniec pliku ręcznie.źródło
źródło
Zainstaluj OpenOffice z Oracle i zrób to samo z formatem CSV OpenOffice i działa.
Miałem ten problem w Windows 7 Pro z Excelem 2010. Kiedyś mogłem kopiować kontakty z Outlooka do Excela, zapisywać jako CSV i importować do Gmaila i Androida (numery telefonów komórkowych z wiodącymi zerami i znakami +).
źródło
Kliknij prawym przyciskiem myszy na komórkach zawierających dane, i kliknij Formatuj komórki ... pozycji menu. Następnie na pierwszej karcie („Liczba”) zmień kategorię z Ogólne na Tekst . Zapobiegnie to automatycznemu formatowaniu tych komórek jako liczb przez Excela, a tym samym usuwaniu zer wiodących (które są pozbawione znaczenia w kontekście analizy numerycznej, ale bardzo znaczące w przypadku identyfikatorów produktów).
Jeśli dane są importowane i analizowane jako liczby, należy użyć kreatora importu danych i ustawić dla każdego typu kolumny wartość „Tekst” zamiast „Ogólne”. Następnie zrób to samo z komórkami, a następnie zapisz skoroszyt programu Excel.
źródło
kliknij komórkę, w której chcesz zachować początkowe zera, a następnie: kliknij prawym przyciskiem myszy> Formatuj komórki> niestandardowe> 0> wpisz całkowitą liczbę, która musi znajdować się w komórce, na przykład: Jeśli potrzebuję 00001234, wstawię 00000000 jako liczba zer, wszystko, co mówi to do zrobienia, to wstawić całkowitą liczbę 8 do komórki, mam już 1234, więc to nadrobi różnicę 4 kolejnymi zerami wiodącymi.
Używam tego codziennie do importowania arkuszy kalkulacyjnych.
źródło
Aby dodać do odpowiedzi @ Jona na to pytanie, miałem plik CSV, który miał kilka kolumn z zerami wiodącymi i dłuższymi liczbami, które albo stracą wiodące zero, albo przekonwertują długą liczbę na notację naukową, lub obie, po zaimportowaniu.
Jedynym sposobem, który mogłem naprawić, było sformatowanie wszystkich komórek w pustym arkuszu
Text
, wykonując następujące czynności:Po sformatowaniu wszystkich komórek arkusza, które mają być
Text
, mógłbym zaimportować plik CSV, wykonując następujące czynności:Data
karcie kliknijFrom Text
:Wybierz swój
.txt
lub.csv
plik i kliknijImport
Wybierz
Delimited
i kliknij `Dalej:Comma
) i odznacz wszystkie inne, które nie mają zastosowania, a następnie kliknijNext
:Text
aby zachować początkowe zera i zapobiec notacji naukowej. Kliknij kolumnę (powinna przyciemnić), a następnie wybierzText
z listy opcji. Pamiętaj, aby zaznaczyć wszystkie kolumny, które muszą być poprawnie sformatowane:Finish
. Jeśli przewiniesz do sformatowanych kolumn, zobaczysz, że wszystkie zera wiodące są zachowane, a długie ciągi liczb nie są notowane naukowo.Mam nadzieję, że to pomaga!
źródło
Jeśli dane zostały wygenerowane przy użyciu SQL. Powinno działać dodawanie znaku tabulacji do wartości liczbowej, która musi zostać obcięta.
źródło