2015-08-31 22 views
28

Tôi sử dụng chức năng SPLIT để tách một chuỗi trông giống như 1.23/1.15.Lấy vật phẩm đầu tiên từ Split()

Hiện tại, nó tạo ra hai ô. Nhưng làm thế nào để có được một yếu tố nhất định từ kết quả? Tôi muốn thực hiện một việc như sau:

SPLIT("1.23/1.15", "/")[0] 

để trích xuất 1.23. Cú pháp chính xác cho điều đó là gì?

tôi đã cố gắng sử dụng INDEX chức năng, nhưng không thành công: =INDEX(SPLIT("1.23/1.15", "/"), 0,0)

Trả lời

47

Bạn có thể sử dụng chức năng chỉ số để chọn giá trị trở lại. Vì vậy, để lấy giá trị thứ hai từ bạn Ví dụ, bạn có thể sử dụng:

=index(SPLIT("1.23/1.15", "/"), 0, 2) 

Đối số cuối cùng nói mà column bạn muốn lấy - 1 sẽ lấy giá trị đầu tiên.

Hoặc bạn có thể sử dụng left/rightfind để trích xuất một trong hai giá trị từ ví dụ của bạn. Ví dụ: để lấy giá trị đầu tiên bạn có thể sử dụng:

=left("1.23/1.15", find("/", "1.23/1.15") -1) 
+0

Ồ, tôi chỉ cho rằng chỉ mục là không dựa trên. Cảm ơn – filur

2

Vấn đề với hai giải pháp trên là chúng không được hỗ trợ bên trong hàm arrayformula. Nếu bạn quấn trong một chức năng truy vấn, bạn sẽ có được kết quả mong muốn và rất linh hoạt trong việc phân tích chỉ là lĩnh vực mà bạn đang tìm kiếm để trở lại:

Return 1st Cột

=query(SPLIT("1.23/1.15", "/"), "SELECT Col1") 

Return 2 Cột

=query(SPLIT("1.23/1.15", "/"), "SELECT Col2") 
Các vấn đề liên quan