Cần giúp: Tách phần công thức trong chuỗi ra để tính toán (8 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

Mà mình cảm ơn bạn nhiều nha. Một việc "nhỏ" vậy chứ đỡ mất thời gian nhiều lắm luôn, vì làm nhiều lần lắm. Máy mình 2016 thì ngon rồi. Nhưng tại khi mình chép qua máy 2010 (máy tính ở nhà mình cũng 2010) là nó bị vụ "dấu nháy đơn" nên hơi khó chịu. Chắc phải update cho tụi nó lên 2016 hết quá. :D
Bạn quét định dạng thử như mình làm ở video thứ 2 trên file của bạn xem có được không chứ không phải sửa ở ô công thức
 
Bạn quét định dạng thử như mình làm ở video thứ 2 trên file của bạn xem có được không chứ không phải sửa ở ô công thức
Format Painting mình có thử rồi. Nó vẫn còn "vướng" dấu nháy đơn á, không có mất.
Mà bạn hiểu tại sao có cái sự copy paste value sang cái nó tự động thêm vào dấu nháy đơn ở đầu không? Mình biết chỗ nào thiết lập sự auto này thì mình bỏ cái là xong. :D
 
Công thức 1 lấy đoạn chuỗi giữa dấu = kề cuối và dấu = cuối, lỗi khi không có dấu = nào. Công thức 2 và 3 lấy đoạn chuỗi giữa dấu = thứ 1 và thứ 2, lỗi khi có ít hơn 2 dấu =. Công thức 2 xử lý hơi rườm rà.
Mã:
=TRIM(MID(SUBSTITUTE(B2&"==","=",REPT(" ",999),999,999))
Hôm nay em có quay lại bài này 1 xíu. Em có thử công thức này của anh (vì thấy nó quá gọn) nhưng nó báo lỗi chỗ 999 như sau:
1602032579086.png
Sao công thức của bạn @hongtrang26 cũng có Rept và 999 nhưng không bị lỗi này? Em sử dụng Excel 2016.
 

File đính kèm

  • 1602032563017.png
    1602032563017.png
    457.8 KB · Đọc: 3
Hôm nay em có quay lại bài này 1 xíu. Em có thử công thức này của anh (vì thấy nó quá gọn) nhưng nó báo lỗi chỗ 999 như sau:
View attachment 246912
Sao công thức của bạn @hongtrang26 cũng có Rept và 999 nhưng không bị lỗi này? Em sử dụng Excel 2016.
Vấn đề nằm ở dấu ngoặc ")"
Bài đã được tự động gộp:

Vấn đề nằm ở dấu ngoặc ")"
Còn vị trí ở đâu thì tự nghiên cứu nhé :D
 
Hôm nay em có quay lại bài này 1 xíu. Em có thử công thức này của anh (vì thấy nó quá gọn) nhưng nó báo lỗi chỗ 999 như sau:
View attachment 246912
Sao công thức của bạn @hongtrang26 cũng có Rept và 999 nhưng không bị lỗi này? Em sử dụng Excel 2016.
Hôm đó tôi trả lời bằng điện thoại nên không phát hiện ra lỗi. Công thức đó bị thiếu 1 dấu ngoặc (màu đỏ).
Rich (BB code):
=TRIM(MID(SUBSTITUTE(B2&"==","=",REPT(" ",999)),999,999))
 
Mã:
=TRIM(MID(SUBSTITUTE(B2&"==","=",REPT(" ",999)),999,999))
Em áp dụng công thức trên ra kết quả đúng luôn rồi. Cảm ơn anh.

@Nhattanktnn : tớ hỏi cậu để khỏi hỏi thầy huuthang điều này vì còn hơi vướng vướng:
Ở công thức trên tại sao lại thim 2 dấu "=" vào cuối chuỗi vậy? Thêm 1 dấu hoặc không thêm tớ thấy kết quả cũng ra y chang. Với cả chỗ đối số trong hàm Rept á, tại sao lại là 999 mà không phải là 1 số khác nhỏ nhẹ nhàng hơn? Trong chuỗi dữ liệu của tớ luôn có tối thiểu là 2 dấu "=", lại thêm 2 dấu "=" nữa thành ra là 4. Mà mỗi dấu "=" được thay bằng 999 " " thành 1 chuỗi dài cả cây số luôn thì có làm trì trệ công thức và cả bảng tính Excel không?
:oops:
 
Mã:
=TRIM(MID(SUBSTITUTE(B2&"==","=",REPT(" ",999)),999,999))
Em áp dụng công thức trên ra kết quả đúng luôn rồi. Cảm ơn anh.

@Nhattanktnn : tớ hỏi cậu để khỏi hỏi thầy huuthang điều này vì còn hơi vướng vướng:
Ở công thức trên tại sao lại thim 2 dấu "=" vào cuối chuỗi vậy? Thêm 1 dấu hoặc không thêm tớ thấy kết quả cũng ra y chang. Với cả chỗ đối số trong hàm Rept á, tại sao lại là 999 mà không phải là 1 số khác nhỏ nhẹ nhàng hơn? Trong chuỗi dữ liệu của tớ luôn có tối thiểu là 2 dấu "=", lại thêm 2 dấu "=" nữa thành ra là 4. Mà mỗi dấu "=" được thay bằng 999 " " thì có làm trì trệ công thức và cả bảng tính Excel không?
:oops:
Mấy bài trước đã đọc đâu =)), Công thức này đang xử lý cho bài # mấy vậy? hoặc bác đưa ví dụ lên em xem sao
 
Úy, ngay bài #1 luôn mà.
1/ 999 là con số đủ lớn vì không xác định được chuỗi của bác trước dấu = có độ dài bao nhiêu, nếu lấy tầm 100 mà trước dấu = là 200 ký tự aaa... chẳng hạn thì khi dùng mid từ 100 sẽ có kết quả kiểu "aa 1*2*2 " chẳng hạn. Sau đó trim sẽ không loại được phần đầu (vì không có khoảng trắng mà nó dính chữ a).
2/ Còn "==" thì em cũng không rõ ý đồ bác ấy là gì cả (như em thì em để SUBSTITUTE(B2,...)
 
tại sao lại thim 2 dấu "=" vào cuối chuỗi vậy?
Không thêm cũng không ảnh hưởng gì đến kết quả cả.
Lý do công thức nối thêm 2 dấu "=": Như đã nói, tôi trả lời trên điện thoại, viết công thức chay (không có excel), tôi không nhớ là hàm MID có trả về lỗi khi vị trí cắt lớn hơn độ dài chuỗi hay không (Ví dụ chuỗi có 2 ký tự mà bảo cắt 1000 ký tự từ ký tự thứ 100) nên thêm vào để tránh lỗi (nếu có).
 
@Nhattanktnn : cảm ơn cậu, mà sao cậu không giúp tớ giải đáp cái ý bên dưới luôn?

Công thức này tớ fill xuống hơn 1000 dòng á.
1/ bác nên bỏ bớt 2 dấu bằng phía sau đi.
2/ công thức này nó chỉ tham chiếu tới 1 cell, cho nên theo em biết, fill 1000 dòng phép tính này không có vấn đề gì. Chỉ tham chiếu tới mảng thì mới làm cho phép tính trở nên chậm chạp.
Tất nhiên là em chưa test thử =)))
 
Web KT

Bài viết mới nhất

Back
Top Bottom