Cách dễ nhất để mở CSV bằng dấu phẩy trong Excel


196

Các tệp CSV được tự động liên kết với Excel nhưng khi tôi mở chúng, tất cả các hàng về cơ bản nằm trong cột đầu tiên, như sau:

nhập mô tả hình ảnh ở đây

Có lẽ bởi vì khi Excel nghĩ "các giá trị được phân tách bằng dấu phẩy", nó thực sự tìm kiếm một số dấu phân cách khác (tôi nghĩ đó là dấu chấm phẩy nhưng nó không quan trọng).

Bây giờ khi tôi đã mở tệp này trong Excel, có một nút hoặc một cái gì đó để nói với nó "mở lại tệp này và sử dụng dấu phẩy như một dấu phân cách"?

Tôi biết tôi có thể nhập dữ liệu vào một bảng tính mới, v.v. hồ sơ gốc.


2
Vì một số lý do, ngoài việc phân cách, việc để Excel mở CSV (hoặc bất kỳ tệp văn bản thuần túy nào khác) là một ý tưởng rất tồi. Tùy thuộc vào tệp nguồn của bạn, bạn sẽ làm hỏng dữ liệu của mình. Tôi đã viết một bài viết chuyên sâu về vấn đề này ở đây: theonemanitdepidor.wordpress.com/2014/12/15/iêu
Wouter

4
Thật khó để hiểu những gì phải diễn ra bên trong Microsoft mà Excel vẫn không thể mở các tệp CSV giống như vậy. Nó cũng phá vỡ số vv theo những cách đáng kinh ngạc. Ngay cả JavaScript cũng không hoàn toàn chuyển đổi điều đó.
usr

Xin lỗi vì đã đào mộ .. nhưng rất có khả năng thực tế là dòng đầu tiên của bạn không có bất kỳ dấu phẩy nào khiến Excel từ bỏ việc thử
patricktokeeffe

Chỉ cần sử dụng ;như phân định và mở tệp bằng cách nhấp đúp sẽ tách nó trong các cột trong MS Excel.
Hrvoje T

Câu trả lời:


179

Chuyển đến tab Dữ liệu và chọn văn bản cho các cột trong các công cụ dữ liệu, sau đó chọn phân cách và nhấn tiếp theo . Sau đó chọn dấu phẩy làm dấu phân cách và nhấn kết thúc

nhập mô tả hình ảnh ở đây


55
Và bạn phải làm điều đó mỗi lần sau khi nhấp đúp vào * .csv trong Windows Explorer? Tôi bằng cách nào đó không thể tin rằng không có cách nào đơn giản hơn, đặc biệt là nếu Excel liên kết chính nó với phần mở rộng tệp * .csv.
Borek Bernard

3
Thông thường, một trình hướng dẫn sẽ bật lên khiến bạn thực hiện quy trình này khi bạn mở tệp, nhưng nếu không, bạn có thể thực hiện theo cách này. Bạn cũng có thể truy cập dữ liệu - lấy dữ liệu ngoài - từ văn bản và chạy trình hướng dẫn nhập từ đó.
Raystafarian

13
Đó là vấn đề, tôi không muốn nhập bất kỳ dữ liệu nào, tôi đang mở một tệp CSV hoàn toàn hợp lệ mà Excel thậm chí còn liên kết với nó. Nhưng OK, nếu đó là như vậy thì có lẽ tôi sẽ cần phải tìm một cái gì đó khác để chỉnh sửa các tệp CSV.
Borek Bernard

2
Có, đó là PITA, tương tự ở đây với Excel 2003. Tôi cũng phải sử dụng Dữ liệu \ Nhập. Bản thân nó không thực sự là vấn đề, nhưng tôi chỉ nhập hai lần một năm nên tôi thường xuyên quên và thử File / Open trước
;-(

1
@gstackoverflow bạn có thể, chỉ cần chọn cột A và sau đó làm điều này.
Tom

162

Đặt:

sep=<delimeter>

vì dòng đầu tiên của tệp csv của bạn sẽ tự động báo cho Excel sử dụng ký tự đó làm dấu phân cách thay vì dấu phẩy mặc định.

Ví dụ:

sep=|
COLUMN1|COLUMN2
data,1|data2
...

sẽ dẫn đến đường ống (|) được sử dụng làm dấu phân cách thay vì dấu phẩy, mà không cần người dùng phải chạy qua trình hướng dẫn nhập trước.


7
Đối với điều này để làm việc trong Excel 2013, bạn phải bỏ chọn Use system separators trongOptions>Advanced
Michael Dòng

1
Bạn có thể định nghĩa dấu phân cách thập phân theo cách tương tự không? Tôi muốn nó là ., ví dụ, 1.5nhưng trong hệ thống của tôi .là dải phân cách cho hàng ngàn.
CGFoX

2
Điều này làm việc cho tôi, ngay cả khi tôi đã kiểm tra "Sử dụng trình phân tách hệ thống". Không có giải pháp khác làm việc cho tôi.
kinh ngạc

Xác nhận rằng điều này hoạt động trong Excel 2016 với "Sử dụng trình phân tách hệ thống" được chọn. Điều đó thật tuyệt.
Bas

Giải pháp hoàn hảo cho một vấn đề ngu ngốc! (Excel sẽ có thể nhận ra dấu phân cách được sử dụng hoặc ít nhất là hỏi tôi và để tôi quyết định!) Tiếp theo : có thể buộc Excel cũng sử dụng bộ ký tự khác không? Tất cả CSV của tôi đều ở dạng UTF-8, nhưng Excel cố mở chúng dưới dạng 'Macintosh', điều này đang tạo ra rất nhiều vấn đề cho tôi !!
vòng loại

51

Tôi không biết liệu bạn có giải quyết được vấn đề này không, nhưng tôi cũng gặp vấn đề tương tự và đã giải quyết nó sau một số cuộc điều tra.

Hóa ra đó là một vấn đề thiết lập khu vực;

Đi vào bảng điều khiển của bạn -> Cài đặt khu vực -> Cài đặt nâng cao và thay đổi dấu phân cách danh sách của bạn thành dấu phẩy .

Của tôi đã được đặt thành dấu chấm phẩy cho Nam Phi sau khi tôi đổi sang Windows 8. Sau khi tôi đổi nó thành dấu phẩy, tất cả các CSV của tôi đều mở chính xác với Excel 2013.

Hi vọng điêu nay co ich.

Nhận xét bổ sung:
Tôi đã sử dụng các bước tương tự như Lèse majesté, nhưng tôi cũng đã thay đổi biểu tượng Thập phân từ dấu phẩy (,) thành fullstop (.) Và nó đã khắc phục vấn đề của tôi.

Điều này là do theo mặc định, Windows 8 sử dụng dấu phẩy làm biểu tượng thập phân và Excel bị lẫn lộn khi phải sử dụng cả hai ký tự làm dấu phân cách và ký hiệu thập phân.


Đã thiết lập như thế này, và bỏ qua bởi excel. Vẫn không tách biệt trên dấu phẩy.
Elliot

Ir có lẽ cần ít nhất một lần đăng xuất, đăng nhập để có hiệu lực.
Gert van den Berg

Làm việc cho tôi sau khi thay đổi biểu tượng thập phân, cảm ơn!
James Cameron

1
Chà, tôi vẫn nghĩ rằng Excel sử dụng các cài đặt khu vực để đọc định dạng tệp!
kinh ngạc

Cảm ơn. Thiết lập này đã giải quyết một vấn đề lớn cho tôi trong công việc. Excel thật là ngu ngốc!
Moha

19

Đây là những gì làm việc cho tôi - nó là sự kết hợp của một số câu trả lời ở đây.

(Lưu ý: máy tính của tôi đang sử dụng một thiết lập định dạng Czech rằng số định dạng như thế này: 1 000,00., Ví dụ, dấu phẩy được sử dụng như một dấu phân cách thập phân và không gian như một tách hàng ngàn Việc tách danh sách mặc định trong cài đặt hệ thống ;.)

  1. Tôi đã thay đổi dấu tách Danh sách hệ thống thành dấu phẩy trong Vùng -> Cài đặt bổ sung
  2. Trong Excel 2013, tôi đã đi đến Tùy chọn -> Nâng cao và không được kiểm tra Sử dụng các dấu tách hệ thống (trong "Tùy chọn chỉnh sửa", đây là phần đầu tiên)
  3. Tôi đặt dấu tách thập phân trong Excel thành. và dấu phân cách hàng nghìn ,(dấu phân cách hàng nghìn có thể không quan trọng nhưng tôi muốn làm cho nó phù hợp với định dạng của Hoa Kỳ)

Một thay thế cho các bước 2 + 3 sẽ là thay đổi các cài đặt này trong cài đặt hệ thống (bước 1) nhưng tôi thường muốn có các số được định dạng theo ngôn ngữ Séc.

Nhược điểm : trong Excel, bây giờ tôi cần nhập số thập phân bằng ngôn ngữ Hoa Kỳ, tức là sử dụng dấu chấm thay vì dấu phẩy. Điều đó cảm thấy một chút không tự nhiên nhưng là một sự đánh đổi chấp nhận được đối với tôi. May mắn thay, phím dấu phẩy trên num-pad của tôi tự động chuyển sang phím chấm (và chỉ trong Excel - các ứng dụng khác vẫn xuất ra dấu phẩy).


Nó không hoạt động với Excel 2010 / cz :-(
Leos Literak

@LeosLiterak: Tôi mới thử nó trong Excel 2013 và nó đã hoạt động.
Sk8erPeter

10

Rõ ràng Excel sử dụng cài đặt khu vực Windows 7 cho dấu phân cách mặc định cho CSV (rõ ràng là một tab theo mặc định). Bạn có thể thay đổi cài đặt đó như vậy .

Tuy nhiên, tôi không biết những hậu quả khác sẽ có. Tôi cho rằng nếu tất cả các tệp CSV trên máy tính của bạn được phân tách bằng dấu phẩy thì sẽ không có vấn đề gì. Nhưng nếu bạn có một chương trình khác (có thể là Microsoft) cũng sử dụng các tệp CSV và nó thường sử dụng các CSV được định dạng bằng một dấu phân cách khác, thì điều này có thể có vấn đề.

Ví dụ: nếu, giả sử, Outlook sử dụng CSV được phân tách bằng tab để nhập / xuất danh bạ và bạn nhận được các CSV đó từ nguồn bên ngoài (Gmail, máy tính khác, bất cứ điều gì ...), thì việc thay đổi cài đặt toàn hệ thống này có thể ngăn Outlook mở các CSV được phân tách bằng tab này.


3
Tôi đã thử thay đổi "cài đặt ngôn ngữ và khu vực"> Định dạng> Cài đặt bổ sung> Dấu tách danh sách, tuy nhiên, nó không có tác dụng trong việc mở tệp CVS trong Excel. Thật không may, nó không phải là một giải pháp.
Borek Bernard

2
Tương tự ở đây với Excel 2010 và Windows 7. Nó đã có, trong cài đặt của tôi và Excel vẫn đang mặc định thành tab.
rhsatrhs

Bất cứ ý tưởng nào nếu chúng ta có thể nhập 2 ký tự khác nhau trong hộp này trong Bảng điều khiển? Ví dụ, ;,để cho phép cả hai nhân vật là danh sách seaparators?
Dzhuneyt

7

LibreOffice Calc có bộ lọc csv rất tiên tiến cho phép bạn chọn các dấu tách, định dạng và mã hóa. Tôi làm việc rộng rãi với dữ liệu ở nhiều định dạng khác nhau và thường cần gửi những dữ liệu này ở định dạng Excel cho người dùng. Tôi sử dụng LibreScript Calc để chuyển đổi các tệp csv sang định dạng mong muốn, sau đó lưu dưới dạng xls.

Điều này có thể không trả lời làm thế nào để làm điều đó một cách dễ dàng trong Excel nhưng nó trả lời làm thế nào để làm điều đó một cách dễ dàng, đặc biệt là khi OP trong các bình luận cho thấy sử dụng một cái gì đó không phải là excel sẽ là một lựa chọn chấp nhận được.


4

Excel 2010 - Ngoài việc xác thực Cài đặt nâng cao khu vực của bạn, hãy nhớ kiểm tra cài đặt Nâng cao Excel của bạn:

Tệp -> Tùy chọn -> Nâng cao

Đảm bảo "Sử dụng dấu tách hệ thống" được chọn.


2
Hoặc, tất nhiên, chắc chắn rằng nó không được kiểm tra nếu bạn muốn nhập một cái gì đó khác với cài đặt khu vực của bạn. :-) Nhưng: thật tốt khi biết cài đặt này tồn tại; Tôi chưa bao giờ nghe về nó trước đây.
Arjan

1
Các cài đặt này dường như chỉ ảnh hưởng đến các dấu phân cách số, không phải là dấu phân cách danh sách.
Borek Bernard

3

Hướng dẫn từng bước cho bối rối:

  1. Nhấn phím Windows
  2. Nhập " intl.cpl " và nhấn Enter.
  3. Nhấp vào " Cài đặt bổ sung ".
  4. Chuyển đến tab " Số ":
  5. Thay đổi biểu tượng thập phân thành một dấu chấm .
  6. Thay đổi " Biểu tượng nhóm chữ số " thành khoảng trắng .
  7. Thay đổi " Dấu tách danh sách " thành dấu phẩy .
  8. Chuyển đến tab " Tiền tệ ":
  9. Thay đổi biểu tượng thập phân thành một dấu chấm .
  10. Thay đổi " Biểu tượng nhóm chữ số " thành khoảng trắng .

Điều đó tốt nếu bạn luôn sử dụng các tệp .CSV tự tạo của mình. Nhưng nó không hoạt động khi bạn nhận được một tập tin từ một người khác đã sử dụng dấu phẩy làm dấu phân cách.
stevenvh

0

Thay đổi dấu phân cách thập phân thành. (dấu chấm) và dấu tách danh sách thành, (dấu phẩy) đã giúp duy trì CSV ở chế độ xem bình thường trong Excel trong máy tính Na Uy.


Cũng trên một Bulgari của tôi
Петър Петров

0

Đối với hệ thống của tôi, các cài đặt đã được đặt thành những gì người khác ở đây đã đề xuất (biểu tượng thập phân được đặt thành. (Dấu chấm) và Dấu tách danh sách được đặt thành, (dấu phẩy) NHƯNG Tôi vẫn gặp sự cố hiển thị khi nhập tệp CSV được xuất từ ​​một ứng dụng khác .

Sau một chút thử nghiệm và lỗi, tôi đã tìm thấy một giải pháp mở mọi tệp CSV trong chế độ xem chính xác.

Đây là những gì làm việc cho tôi trong Excel 2013 với Windows 8:

Bảng điều khiển> Đồng hồ, Ngôn ngữ và Vùng> Vùng> Cài đặt bổ sung> Dấu tách danh sách được đặt thành ,; (dấu phẩy VÀ dấu hai chấm) -> nhấp vào "áp dụng" và sau đó xem liệu đó có phải là mẹo hay không.


0

Trong Excel, tab DATA , trong phần Nhận dữ liệu bên ngoài , nhấp vào " Từ văn bản " và nhập CSV của bạn trong Trình hướng dẫn.


0

Tôi biết rằng một câu trả lời đã được chấp nhận, nhưng một mục cần kiểm tra là mã hóa tệp CSV. Tôi có tập lệnh Powershell tạo tệp CSV. Theo mặc định, nó được mã hóa chúng dưới dạng UCS-2 Little Endian (theo Notepad ++). Nó sẽ mở tệp trong một cột duy nhất trong Excel và tôi phải thực hiện chuyển đổi Văn bản thành Cột để phân chia các cột. Thay đổi tập lệnh để mã hóa cùng một đầu ra là "ASCII" ( UTF-8 w / o BOM trên Notepad ++) cho phép tôi mở CSV trực tiếp với các cột được tách ra. Bạn cũng có thể thay đổi mã hóa CSV trong Notepad ++ .

  • Mã hóa menu > Chuyển đổi sang UTF-8 mà không cần BOM
  • Lưu tệp CSV
  • Mở trong Excel, các cột phải được chia

ASCII và UTF-8 w / o BOM không giống nhau. Trên thực tế, ASCII phù hợp với UTF-8 w / o BOM một cách liền mạch vì UTF-8 có trong tiêu chuẩn. Ngay khi các ký tự không được trình bày trong ASCII xuất hiện, nó chỉ có thể xuất ANSI hoặc UTF-8 thay vào đó ... Nếu đầu ra của bạn không bao giờ có bất cứ thứ gì ngoài ASCII thì tốt thôi
sinni800

0

Với phiên bản Excel 2010 mới hơn, bạn có thể mở (menu: Tệp, Mở hoặc control-O) tệp .CSV dưới dạng tệp văn bản. Sau đó, bạn trực tiếp lấy trình hướng dẫn, dễ dàng như với LibreScript Calc, nơi bạn có thể chọn đúng dấu phân cách trường.

nhập mô tả hình ảnh ở đây

Điều này chỉ hoạt động với các tệp có phần mở rộng .CSV thích hợp. Ứng dụng của tôi là tạo đầu ra CSV với phần mở rộng .ACC và cố gắng mở nó trong excel bằng phương pháp trên, dẫn bạn đến các góc excel hoàn toàn khác nhau :-(

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.