Giúp chuyển chữ 123,456,789.00 thành số

Liên hệ QC

dht

Thành viên mới
Tham gia
18/8/07
Bài viết
16
Được thích
37
Cách nào chuyển dãy số dạng text (ví dụ 123,456,789.00) thành số nhanh nhất?
 
Như thế này chăng?
=value(123,456,789.000)
 
Cách nào chuyển dãy số dạng text (ví dụ 123,456,789.00) thành số nhanh nhất?
Với những cell có chứa số nhưng ở dang text thì các cell ấy sẽ có dấu hiệu hình tam giác màu xanh nằm góc trên bên trái ---> Bạn hay quét chọn các cell ấy.. bạn sẽ thấy dấu chấm than màu vàng nằm bên phải---> Chọn vào dấu chấm than này ---> Một menu xổ xuống ---> Chọn mục "Convert to number..
Vậy là xong ---> Thao tác 1 lần duy nhất cho tất cả các cell
 
Nếu máy tính có định dạng phần thập phân là dấu [,] và phân cách phần trăm với phần ngàn là dấu [.] thì cách của 2 Bác Brutalndu96081631 không được đâu ạ. Theo mình thì cách chuyển đổi nhanh và hiệu quả nhất (nhất là dữ liệu nhiều) thì các Bác có thể làm theo các bước sau:

  1. Vào Menu Tools >> Options >> International, bỏ chọn Use system separators >> Chọn Decimal Separator là dấu [.] và Thousands Separator là dấu [,] OK.
  2. VD dữ liệu gốc từ C1:C100, tại ô D1=value(C1) rồi Copy D1 và Paste xuống đến D100.
  3. Chọn dãy D1:D100, Copy >> Chuột phải chọn Paste Special >> Value >> OK.
  4. Vào Menu Tools >> Options >> International, chọn Use system separators >> OK, để chọn lại định dạng như hệ thống.
  5. Như vậy là OK rồi với dữ liệu từ text (C1:C100) đã chuyển sang số (D1:D100).
Thân!


 
Lần chỉnh sửa cuối:
  1. Vào Menu Tools >> Options >> International, bỏ chọn Use system separators >> OK.
  2. VD dữ liệu gốc từ C1:C100, tại ô D1=value(C1) rồi Copy D1 và Paste xuống đến D100.
  3. Chọn dãy D1:D100, Copy >> Chuột phải chọn Paste Special >> Value >> OK.
  4. Vào Menu Tools >> Options >> International, chọn Use system separators >> OK, để chọn lại định dạng như hệ thống.
  5. Như vậy là OK rồi với dữ liệu từ text (C1:C100) đã chuyển sang số (D1:D100).
Nếu làm y chang như bạn nói, thì vẫn không được đâu. Sau khi bỏ chọn Use System Seperators, còn phải thay đổi cái Decimal seperator thành dấu chấm [.] và Thousands seperator thành dấu phẩy [,] nữa, thì mới được.
 
Nếu làm y chang như bạn nói, thì vẫn không được đâu. Sau khi bỏ chọn Use System Seperators, còn phải thay đổi cái Decimal seperator thành dấu chấm [.] và Thousands seperator thành dấu phẩy [,] nữa, thì mới được.

Đúng là em thiếu, Thank Bác đã nhắc, để em sửa lại bài viết cho chính xác.
 
Nếu máy tính có định dạng phần thập phân là dấu [,] và phân cách phần trăm với phần ngàn là dấu [.] thì cách của 2 Bác Brutalndu96081631 không được đâu ạ. Theo mình thì cách chuyển đổi nhanh và hiệu quả nhất (nhất là dữ liệu nhiều) thì các Bác có thể làm theo các bước sau:

  1. Vào Menu Tools >> Options >> International, bỏ chọn Use system separators >> Chọn Decimal Separator là dấu [.] và Thousands Separator là dấu [,] OK.
  2. VD dữ liệu gốc từ C1:C100, tại ô D1=value(C1) rồi Copy D1 và Paste xuống đến D100.
  3. Chọn dãy D1:D100, Copy >> Chuột phải chọn Paste Special >> Value >> OK.
  4. Vào Menu Tools >> Options >> International, chọn Use system separators >> OK, để chọn lại định dạng như hệ thống.
  5. Như vậy là OK rồi với dữ liệu từ text (C1:C100) đã chuyển sang số (D1:D100).
Thân!


Từ bước 2 trở đi ta thay thế bằng cách khác:
2. Copy 1 cell rổng
3. Quét chọn toàn bộ dử liệu, click phải chuột, chọn Paste Specials \---> Check vào 2 mục "Value" và "Add" ---> OK
Vậy là xong!
 
Định dạng số trong máy là (.) cho phần nghì và (,) cho phàn thập phân các bác ạ

Dùng công thức chắc quá phức tạp

Theo các bác thì viết một cái add-in có tiện hơn không (vì thường xuyên phải đổi text thành số như vậy)
 
Định dạng số trong máy là (.) cho phần nghì và (,) cho phàn thập phân các bác ạ

Dùng công thức chắc quá phức tạp

Theo các bác thì viết một cái add-in có tiện hơn không (vì thường xuyên phải đổi text thành số như vậy)
Tôi giới thiệu bạn 1 cách không cần dùng hàm hay code gì cả!
1> Đầu tiên dùng chức năng Find and Replace để thay dấu phẩy và chấm thành rổng!
- Quét chọn vùng dử liệu
- Bấm Ctrl + H... khung Find what gõ dấu chấm... khung Replace with để trống --> Bấm nút Replace All
- Làm tương tự để thay dấu phẩy thành rông
- Nếu dử liệu của bạn nằm trên nhiều sheet và bạn muốn thay thế toàn bộ thì bấm thêm vào nút Options, khung Within bạn chon Workbook
2> Nếu may mắn, sau công đoạn này thì tất cả các cell text sẽ tự động biến thành Number... (Nếu như các cell chứa text đã được Format General trước đó)... Bằng ngước lại bạn vẩn thấy nó canh lề trái thì làm thêm công đoạn copy cell rổng rồi Paste Special\Add vào vùng dử liệu text như bài viết ở trên của tôi
Bảo đảm cách này cực nhanh, dù dử liệu bạn nhiều đến bao nhiêu!
Nếu bạn vẫn không làm được thì đưa file lên đây tôi làm cho
 
Nếu trong máy định dạng phần nghìn là , và thập phân là . thì có 2 cách để biến thành số mà không dùng công thức:

1. Gõ số 1 ở 1 ô bất kỳ. Chọn Copy, sau đó chọn những ô cần đổi thành số, chọn Edit, Paste Special, chọn Value và chọn Multiply, chọn OK.

2. Gõ số 0 ở 1 bất kỳ, chọn Copy, sau đó chọn những ô cần đổi thành số, sau đó chọn Edit, Paste Special, chọn Value và chọn Add hoặc Subtract chọn OK.
 
Tôi giới thiệu bạn 1 cách không cần dùng hàm hay code gì cả!
1> Đầu tiên dùng chức năng Find and Replace để thay dấu phẩy và chấm thành rổng!
- Quét chọn vùng dử liệu
- Bấm Ctrl + H... khung Find what gõ dấu chấm... khung Replace with để trống --> Bấm nút Replace All
- Làm tương tự để thay dấu phẩy thành rông
- Nếu dử liệu của bạn nằm trên nhiều sheet và bạn muốn thay thế toàn bộ thì bấm thêm vào nút Options, khung Within bạn chon Workbook
2> Nếu may mắn, sau công đoạn này thì tất cả các cell text sẽ tự động biến thành Number... (Nếu như các cell chứa text đã được Format General trước đó)... Bằng ngước lại bạn vẩn thấy nó canh lề trái thì làm thêm công đoạn copy cell rổng rồi Paste Special\Add vào vùng dử liệu text như bài viết ở trên của tôi
Bảo đảm cách này cực nhanh, dù dử liệu bạn nhiều đến bao nhiêu!
Nếu bạn vẫn không làm được thì đưa file lên đây tôi làm cho

Cám ơn bạn, cách này thủ công quá, mà ai cũng làm được
 
Cám ơn bạn, cách này thủ công quá, mà ai cũng làm được
Bạn nói như thế với ý là khen hay chê vậy?

"Cách này thủ công quá": Chẳng lẽ bạn lại muốn một công thức hay là một Addin gì đó cao siêu hơn? Có cần thiết không? Có đáng phải bỏ công sức ra để xử một chuyện mà Excel đã cung cấp sẵn cho mình phương tiện?

"Ai cũng làm được": Đúng đấy. Nhưng không phải ai cũng nhớ rằng có một cách nhanh như thế.

Không biết ý bạn thì sao. Chứ với tôi, cách gì cũng được, thủ công hay phức tạp cũng được, miễn là đạt hiệu quả, miễn là ít tốn thời gian, là tôi chọn.
 
Bạn nói như thế với ý là khen hay chê vậy?

"Cách này thủ công quá": Chẳng lẽ bạn lại muốn một công thức hay là một Addin gì đó cao siêu hơn? Có cần thiết không? Có đáng phải bỏ công sức ra để xử một chuyện mà Excel đã cung cấp sẵn cho mình phương tiện?

"Ai cũng làm được": Đúng đấy. Nhưng không phải ai cũng nhớ rằng có một cách nhanh như thế.

Không biết ý bạn thì sao. Chứ với tôi, cách gì cũng được, thủ công hay phức tạp cũng được, miễn là đạt hiệu quả, miễn là ít tốn thời gian, là tôi chọn.

ý tôi là nếu thường xuyên phải lặp lại các bước như bạn nói thì ngại quá
Tôi hỏi ở đây hy vọng các cao thu chỉ dẫn "cách chuyển nhanh nhất" bằng một công thức hoặc add-in
Mà có lẽ bạn nói đúng, "Có đáng phải bỏ công sức ra để xử một chuyện mà Excel đã cung cấp sẵn cho mình phương tiện?"
 
Lần chỉnh sửa cuối:
"Có đáng phải bỏ công sức ra để xử một chuyện mà Excel đã cung cấp sẵn cho mình phương tiện?"
Đáng hay không còn tùy thuộc vào công việc cụ thể!
Như bạn nói:
ý tôi là nếu thường xuyên phải lặp lại các bước như bạn nói thì ngại quá
Lập đi lập lại 1 công việc... vậy là đáng rồi
Cái gì bạn làm thủ công được thì 99% có thể chuyển nó thành code (tự động hóa) ---> Cách đơn giản nhất để chuyển thành code là dùng bộ thu macro ---> thu lại quá trình làm bằng tay của mình... vậy là thành code rồi
Nếu bạn không tự làm được thì đưa file cụ thể lên đi... hoặc bạn hảy tham khảo bài viết này:
http://www.giaiphapexcel.com/forum/showthread.php?t=19010
cũng là tìm kiếm và thay thế đấy ---> Thậm chí còn có thể thay thế ở các file khác chứ nội trong 1 file thì có gì đáng nói ---> Quá dể!
 
cám ơn tất cả các bạn

Tự mày mò tôi đã có công thức khá gọn:

=value(substittute(left(A1;len(A1)-3);",";""))

trong đó A1 là ô chứa text dạng 123,456,789.00
 
cám ơn tất cả các bạn

Tự mày mò tôi đã có công thức khá gọn:

=value(substittute(left(A1;len(A1)-3);",";""))

trong đó A1 là ô chứa text dạng 123,456,789.00

Trời! Đã làm công thức thì làm như thế này cho gọn bạn ơi! Chi mà làm công thức dài quá!
PHP:
 = --A1
Như vậy là xong rồi! Nếu muống dùng công thức!
 
Trời! Đã làm công thức thì làm như thế này cho gọn bạn ơi! Chi mà làm công thức dài quá!
PHP:
 = --A1
Như vậy là xong rồi! Nếu muống dùng công thức!
Không được đâu Kiệt à! Lý do nằm ở dấu phân cách ngàn và dấu thập phân quy định trong Regional Language Options ấy!
Và nếu Kiệt dùng công thức = --A1 mà ra được kết quả thì điều này đồng nghĩa A1 là 1 Text có chứa số (Number stored as Text) ---> Vậy cần gì công thức ---> Error Checking là xong! Đúng không?
 
Không được đâu Kiệt à! Lý do nằm ở dấu phân cách ngàn và dấu thập phân quy định trong Regional Language Options ấy!
Vâng đúng như vậy anh ndu! Vấn đề nằm ở dấu phân cách ngàn và dấu thập phân trong Regional Language Options là vấn đề mấu chốt.

Và nếu Kiệt dùng công thức = --A1 mà ra được kết quả thì điều này đồng nghĩa A1 là 1 Text có chứa số (Number stored as Text) ---> Vậy cần gì công thức ---> Error Checking là xong! Đúng không?
Đúng như vậy anh ndu ơi! Chỉ cần dùng Error Checking là xong! Nhưng ở đây tác giả nói muốn dùng công thức. Cho nên em mới góp ý dùng công thức cho nó gọn hơn!
 
Vâng đúng như vậy anh ndu! Vấn đề nằm ở dấu phân cách ngàn và dấu thập phân trong Regional Language Options là vấn đề mấu chốt.


Đúng như vậy anh ndu ơi! Chỉ cần dùng Error Checking là xong! Nhưng ở đây tác giả nói muốn dùng công thức. Cho nên em mới góp ý dùng công thức cho nó gọn hơn!
Vì bài số #8 tác giả nói rằng:
Định dạng số trong máy là (.) cho phần nghì và (,) cho phàn thập phân các bác ạ

Dùng công thức chắc quá phức tạp

Theo các bác thì viết một cái add-in có tiện hơn không (vì thường xuyên phải đổi text thành số như vậy)
Điều này có nghĩa là số mà tác giả đưa lên làm ví dụ (123,456,789.00) chắc chắn là 1 TEXT HOÀN TOÀN ---> Nếu không thì cần gì công thức
 
Với những cell có chứa số nhưng ở dang text thì các cell ấy sẽ có dấu hiệu hình tam giác màu xanh nằm góc trên bên trái ---> Bạn hay quét chọn các cell ấy.. bạn sẽ thấy dấu chấm than màu vàng nằm bên phải---> Chọn vào dấu chấm than này ---> Một menu xổ xuống ---> Chọn mục "Convert to number..
Vậy là xong ---> Thao tác 1 lần duy nhất cho tất cả các cell

Bạn ndu96081631 ơi, nếu viết code, thì phải viết làm sao để chữ thành số (như trường hợp bạn nói ở đoạn quote) hả bạn? (Mình đã thử "Selection.Numberformat = "General" " rồi mà vẫn hông được)

Cảm ơn bạn trước nha! =)
 
Web KT
Back
Top Bottom