Google Sheets, công thức tra cứu phiên âm IPA tiếng Anh

Chào các bạn, mình là Thanh và trong bài viết này mình sẽ chia sẻ với các bạn một cách các bạn có thể sử dụng công thức trong Google Sheets để có thể dễ dàng tra cứu phiên âm IPA của một từ tiếng Anh.

Ngày xưa khi học tiếng Anh thì mình khá là lười trong việc tra phiên âm của một từ, bởi vì mình thích nghe trực tiếp và bắt chước lại hơn. Tuy nhiên việc học bằng cách tra phiên âm IPA, mình nghĩ sẽ hệ thống và phù hợp hơn với nhiều bạn.

Để làm được điều này, chúng ta có thể nghĩ tới 2 cách:

  1. Sử dụng Google Apps Script để có thể truy vấn tới một API miễn phí cho chúng ta kết quả phiên âm IPA
  2. Chỉ sử dụng công thức trong Google Sheets, tuy nhiên vẫn cần truy vấn tới API miễn phí.

Như vậy thì đối với cả 2 cách trên, chúng ta đều cần có 1 API free. Sau khi tìm kiếm thì mình may mắn kiếm được một API sử dụng GET Method chứ không phải POST Method – nghĩa là chúng ta có thể kiểm tra API này trực tiếp bằng cách sử dụng URL và dán vào trình duyệt chứ không cần tới công cụ để gửi truy vấn như Postman.

https://api.dictionaryapi.dev/api/v2/entries/en/hello

Ở trong URL trên, chữ “hello” ở cuối là chữ mình đã định dạng màu đậm lên, nghĩa là nếu chúng ta muốn kết quả phiên âm IPA của chữ nào thì chúng ta có thể thay vào vị trí này. Đây là kết quả khi bạn dán URL trên vào trong trình duyệt:

Như vậy là chúng ta đã có API và có thể sử dụng được. Kết quả chúng ta nhận được ở đây là kiểu dữ liệu Text, JSON.

Ở đây, chúng ta tập trung vào việc chỉ sử dụng công thức để tra cứu IPA. Khi nói tới tương tác với “thế giới bên ngoài” của Sheets, chúng ta có thể sẽ nghĩ tới hàm IMPORTXML, IMPORTDATA. Bởi vì IMPORTXML không làm việc trực tiếp được với JSON, vậy nên chúng ta sẽ sử dụng IMPORTDATA

=IMPORTDATA("https://api.dictionaryapi.dev/api/v2/entries/en/hello")

Lần đầu tiên nhập 1 công thức Google Sheets có khả năng trao đổi dữ liệu với thế giới bên ngoài, bạn sẽ nhận được thông báo như trên của Google, và chúng ta sẽ bấm Allow access để cho phép điều này. Tuy nhiên ở đây, chúng ta gặp phải vấn đề tiếp theo, kết quả bị dàn ra nhiều cột như hình bên dưới:

Như vậy chúng ta sẽ cần phải nối các kết quả này vào với nhau bằng hàm JOIN:

=JOIN("",IMPORTDATA("https://api.dictionaryapi.dev/api/v2/entries/en/hello"))

Sau đó ta cần tìm cách để lấy được phần giá trị của key “text” trong đoạn JSON này bằng cách sử dụng hàm REGEXEXTRACT như đã hướng dẫn trong khoá học Google Sheets nâng cao của Thanh:

=REGEXEXTRACT(JOIN("",IMPORTDATA("https://api.dictionaryapi.dev/api/v2/entries/en/hello")), """text"":""([^""]+)""")

Và tất nhiên, bạn có thể thay từ hello bằng những từ khác bằng cách sử dụng tham chiếu:

Chúc các bạn thành công và xin hẹn gặp lại trong khoá học. [Đây là file kèm theo]


Tác giả: dtnguyen (Nguyễn Đức Thanh)

@ Học Excel Online | DTNguyen.business
· · ·

Khóa học mới xuất bản