Làm cách nào để tôi dừng Excel chuyển đổi giá trị 0503E000 thành 5.03E + 02 tự động?


22

Excel tự động chuyển đổi giá trị 0503E000 thành 5.03E + 02 trong bất kỳ ô nào trong CSV. Tôi đã cố gắng chuyển đổi nó thành số văn bản và chung nhưng sau khi tôi lưu nó và mở lại, nó sẽ quay trở lại 5.03E + 02

Làm thế nào để tôi ngăn chặn điều này xảy ra?


chỉ cần thay đổi kích thước chiều rộng cột và nó sẽ được hiển thị bình thường
Scorpion99

Bạn đã thử định dạng ô dưới dạng văn bản trước khi nhập văn bản chưa?
CharlieRB

đã thử thay đổi kích thước và định dạng dưới dạng văn bản đã không hoạt động ....
CrashOverride

Nếu bạn cần sử dụng giá trị dưới dạng số hex (nghĩa là bạn không thể có nó dưới dạng chuỗi văn bản), bạn có thể lồng DEC2HEXHEX2DECchuỗi cho số gốc (ví dụ: ví dụ =DEC2HEX(HEX2DEC("0503E000"))của bạn). Nó có thể không hữu ích nếu bạn cần thao tác với tệp csv mà không chứa công thức, nhưng đó là một tùy chọn khác ngoài định dạng dưới dạng văn bản.
Myles

Câu trả lời:


16

Tôi nghĩ vấn đề chính ở đây là bạn đang sử dụng CSV, không có loại ô được nhúng trong đó. Excel tự động cố gắng diễn giải ô là có một số khoa học, đó là lý do tại sao bạn nhìn thấy 5.03E + 02 thay vì 0503E000 .

Hãy thử tạo một sổ làm việc Excel và định dạng tất cả các ô dưới dạng văn bản, sau đó dán vào dữ liệu. Tôi đã thử nó trong Excel 2013 và nó đã hoạt động.


Vâng, nó hoạt động trong Workbook, nhưng thật không may, chúng tôi phải sử dụng CSV cho mục đích này ..... thật đáng tiếc
CrashOverride

Vì vậy, đừng sử dụng Excel để xem nội dung hoặc chạy macro trên ô, để chuyển đổi lại hoặc sử dụng cú pháp hơi khác nếu bạn sử dụng 0x trước giá trị tôi không tin nó sẽ chuyển đổi
Ramhound

Tôi nghĩ rằng chúng ta có thể phải loại bỏ điều này ... bởi vì nếu chúng ta mở nó trong một trình soạn thảo khác như notepad hoặc notepad ++ thì nó có giá trị chính xác .... vì vậy tôi nghĩ rằng tế bào có giá trị chính xác chỉ hiển thị nó một cách sâu sắc trong ký hiệu khoa học ....
CrashOverride

26

Nếu bạn có thể chuyển đổi hoặc kiểm soát định dạng CSV , bạn có thể buộc một cột phân tích thành văn bản trong Excel bằng cách gói nó trong dấu ngoặc kép và chuẩn bị một dấu bằng.

Excel sẽ bất cẩn loại bỏ độ chính xác trong định dạng này:

Value,0503E000,1234123412341234

Hoặc thậm chí định dạng này:

Value,"0503E000","1234123412341234"

Chuyển đổi nó thành:

Value  |  5.03E+02  |  1234123412341230

Tuy nhiên , việc thêm dấu bằng buộc Excel sẽ bảo toàn dữ liệu của bạn:

Value,="0503E000",="1234123412341234"

Khoan mở ra như:

Value  |  0503E000  |  1234123412341234

1
Giải pháp tuyệt vời khi dán từ SQL
SeaSprite

1
Cũng là giải pháp tuyệt vời khi nhập dữ liệu qua "Nhận dữ liệu ngoài" trong menu "Dữ liệu" của Excel.
Mohsen Abasi

1
Giải pháp tuyệt vời. Hạn chế duy nhất (nhỏ) là bạn sẽ kết thúc bằng các công thức thay vì các giá trị. Vì vậy, chỉ cần sao chép mọi thứ và sau đó dán các giá trị , điều này sẽ dẫn đến một tệp Excel nhỏ hơn một chút.
Stef

9

Thay vì Mở ing "tệp CSV trong Excel, hãy chọn Nhập tệp (trong Excel 2007-2010 bạn sẽ điều hướng đến Dải dữ liệu / Nhận dữ liệu ngoài / Từ văn bản). Không chắc chắn về năm 2013 nhưng sẽ có một cái gì đó tương tự. bạn làm điều đó, trình hướng dẫn Nhập văn bản sẽ mở ra và cho bạn cơ hội định dạng cột chứa Giá trị đó dưới dạng Văn bản, trước khi Excel (không hữu ích) thay đổi nó thành giá trị số.


1
Điều này. Tôi gần như không bao giờ mở tệp CSV trực tiếp.
pepoluan

@pepoluan Tôi không hiểu những gì bạn đã viết.
Ron Rosenfeld

Phần nào chính xác bạn không hiểu?
pepoluan

4
@pepoluan Cảm ơn. Nếu tôi hiểu this, phần còn lại sẽ rõ ràng. Đoán tôi đang già đi :-(
Ron Rosenfeld

1
Tôi đã hy vọng rằng sử dụng "điều này" như một bản án hoàn chỉnh sẽ chết một cái chết nhanh chóng, nhưng 4 năm sau, nó mạnh mẽ hơn bao giờ hết.
biến thể

2

Bắt đầu ô với dấu nháy đơn để buộc giải nghĩa văn bản:

'0502E000

Về cơ bản, điều này nói với Excel không phân tích trường dưới dạng số. Vì có một 'E' trong trường, nên nó trông giống như một số đối với Excel. Dấu nháy đơn sẽ không thực sự được đưa vào trong tế bào:

[a1] '0502E000
[b1] =hex2dec(a1)

Ô 'b1' sẽ hiển thị 84074496.


2
Điều này hoạt động khi nhập trực tiếp vào Excel, nhưng không phải với tệp CSV.
SBF

Khi mở tệp csv, dấu nháy đơn sẽ thực sự được nhập vào ô
Bắt đầu

0

Hãy thử tải tệp (dữ liệu được tìm nạp từ bảng DB) thông qua tùy chọn DATA trong MS excel, sau đó chỉ cần tải, không chọn Phát hiện các loại dữ liệu theo mục Phát hiện kiểu dữ liệu, sau đó tải, đây sẽ là định dạng của dữ liệu và tải excel, không cần chuyển đổi cột.


0

Dán dữ liệu vào bảng tính google. Chọn cột ==> Định dạng ==> Số => Định dạng tùy chỉnh => nhập số chữ số mà bạn muốn định dạng xảy ra (ví dụ: 10 chữ số = 0000000000)


Tôi muốn đề xuất tốt hơn Chỉnh sửa bài đăng của bạn ,, vì cần thêm một số ví dụ !!
Rajesh S

-1

Với định dạng ô mặc định, các số có số 0 ở phía trước và số dài sẽ tự động được sửa đổi bởi Excel. Ví dụ: nếu bạn nhập 012, nó sẽ được đổi thành 12.

Nếu bạn định dạng các ô là Văn bản , thì bất kỳ số nào bạn nhập vào ô sẽ vẫn như cũ và sẽ không được sửa đổi bởi Excel.

Tuy nhiên, nếu bạn dán một số từ một nguồn khác vào một ô được định dạng là Văn bản và trong nguồn đó có bất kỳ loại định dạng nào, định dạng của ô sẽ thay đổi từ Văn bản thành Chung và thao tác số sẽ quay trở lại.

Giải pháp mà tôi tìm thấy là thực hiện dán đặc biệt và dán số dưới dạng Văn bản . Sau đó, ô vẫn giữ nguyên định dạng Văn bản và số này không bị sửa đổi.

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.