Skip to content

Bảng tính (Excel) - Speadsheets

Đọc hoặc ghi dữ liệu bảng tính Excels

File

Chọn đường dẫn file excel trong máy tính

Phạm vi

Phạm vi giá trị của các ô mà bạn muốn lấy, cập nhật hoặc xoá. Bạn có thể xác định phạm vi ô bằng cách sử dụng Kí hiệu A1 like Sheet1!A1:B2 hoặc A1:B2 hoặc A1 (viết ngắn gọn của A1:A1)

Lấy giá trị ô bảng tính

Lấy giá trị các ô của bảng tính của 1 file excel

  • Khoá Tham chiếu
    Dùng để định danh dữ liệu đọc được. Tham chiếu từ các khối sử dụng như Lặp dữ liệu, Xuất dữ liệu, ...

  • Sử dụng hàng đầu tiên làm từ khoá
    Sử dụng hàng đầu tiên của bảng tính làm khoá đối tượng. Ví dụ khi bạn có một bảng tính như thế này.

nameage
foo22
bar23
json
// Khi tắt
[["name", "age"], ["foo", 22], ["bar", 23]]

// Khi bật
[{ "name": "foo", "age": 22 }, { "name": "bar", "age": 23 }]
// Khi tắt
[["name", "age"], ["foo", 22], ["bar", 23]]

// Khi bật
[{ "name": "foo", "age": 22 }, { "name": "bar", "age": 23 }]
  • Tên cột dùng làm khoá chính

    Trong trường hợp bạn muốn dùng chính xác dữ liệu với profile đang chạy thì bạn chọn lựa chọn này

    Ví dụ khi bạn có một bảng tính như thế này.

    profileIdnameage
    2foo22
    3bar23

Bạn muốn khi chạy profile có id là 2 thì sẽ dùng giá trị là foo thì bạn dùng lựa chọn này, khi đó bạn có thể lấy ra giá trị foo bằng biểu thức {{googleSheets.referenceKey.[profileId].name}}, khi đó khi chạy profile có id là 2 sẽ lấy ra giá trị foo, profile có id là 3 sẽ lấy ra giá trị bar

Cập nhập giá trị ô bảng tính

Dữ liệu từ

Nguồn dữ liệu để cập nhật bảng tính, mặc định là bảng. Dữ liệu trong phạm vi sẽ được ghi đè. Số ô được ghi đè phụ thuộc vào nguồn dữ liệu.

  • Bảng: lấy dữ liệu đã được chèn vào bảng
    • Ghi key vào hàng đầu: Sử dụng các cột làm hàng đầu tiên trên bảng tính.
  • Giá trị cụ thể: Dữ liệu được nhập sẽ được ghi vào ô đầu tiên trong phạm vi đã chọn. Giá trị dữ liệu có thể là số, chuỗi, boolean
  • Tuỳ chỉnh: dữ liệu được nhập phải là một mảng thuộc kiểu dữ liệu mảng với cú pháp JSON hợp lệ.
json
[["1","2","3"]]
[["1","2","3"]]

Chú ý

Cần phải tắt file đi (nếu file đang được mở.. vd bởi Excel Windows, ...) khi chạy để tránh bị lỗi

Chèn hoặc thêm các giá trị ô bảng tính

Dữ liệu từ

Nguồn dữ liệu để cập nhật bảng tính, mặc định là bảng Chức năng này sẽ tìm hàng khả dụng chưa có dữ liệu trong phạm vi đã chọn và thêm mới các hàng tại vị trí đó các hàng liền sau sẽ đươc dịch chuyển xuống dưới. Số hàng cột được thêm sẽ phụ thuộc vào dữ liệu nguồn

  • Bảng: lấy dữ liệu đã được chèn vào bảng
    • Ghi key vào hàng đầu: Sử dụng các cột làm hàng đầu tiên trên bảng tính.
  • Giá trị cụ thể: Dữ liệu được nhập sẽ được thêm mới vào ô đầu tiên khả dụng trong phạm vi đã chọn. Giá trị dữ liệu có thể là số, chuỗi, boolean
  • Tuỳ chỉnh: dữ liệu được nhập phải là một mảng thuộc kiểu dữ liệu mảng với cú pháp JSON hợp lệ.
json
// Thêm 1 dòng mới có 3 ô với 3 giá trị tươn ứng
[["1","2","3"]]

// Thêm 3 dòng mới, mỗi  có 3 ô với 3 giá trị tươn ứng (1, 2, 3) và hàng thứ 2 (4, 5, 6)
[["1","2","3"], ["4", "5", "6"]]
// Thêm 1 dòng mới có 3 ô với 3 giá trị tươn ứng
[["1","2","3"]]

// Thêm 3 dòng mới, mỗi  có 3 ô với 3 giá trị tươn ứng (1, 2, 3) và hàng thứ 2 (4, 5, 6)
[["1","2","3"], ["4", "5", "6"]]

Chú ý

Cần phải tắt file đi (nếu file đang được mở.. vd bởi Excel Windows, ...) khi chạy để tránh bị lỗi

Xoá giá trị ô bảng tính

Xoá giá trị của bảng tính theo phạm vi đã chọn

Chú ý

Cần phải tắt file đi (nếu file đang được mở.. vd bởi Excel Windows, ...) khi chạy để tránh bị lỗi

Truy cập dữ liệu trang tính

Để truy cập các giá trị bảng tính từ đầu vào của node, bạn có thể sử dụng các biểu thức như cú pháp {{ spreadSheets.referenceKey.path }}.

  • Ví dụ trường hợp lấy dữ liệu từ node Google Sheet với khoá tham chiếu là data và dữ liệu trong google sheet như bảng sau
nameage
An18
Manh23

Để lấy giá trị name của hàng đầu tiên chúng ta dùng cú pháp {{spreadSheets.data.0.name}}

Đọc thêm : Biểu thức

Sử dụng trong trường hợp thực tế

Bài toán: Tôi có 1 danh sách tài khoản mật khẩu, cần kiểm tra xem có đăng nhập được hay không. Các node sau sẽ tiến hành đọc lần lượt từng hàng, tiến hành logic kiểm tra tài khoản, rồi ghi trạng thái dòng ô trạng thái tương ứng

usernamepasswordtrạng thái
user001pass001
user002pass002

Tổng thể Ở đây chúng ta có 5 khối chính:

  • 1 khối đọc dữ liệu excel (khối đầu tiên sau khối bắt đầu): Khối này chịu trách nhiệm đọc dữ liệu profile (xem phần dưới)

  • Khối chèn dữ liệu và khối HttpRequest, ở đây là logic chính của các bạn. Ở ví dụ thì mình đang lấy thông tin trên 1 hàng đọc được từ file excel, gán vào biến để sử dụng. Khối HttpRequest sẽ là khối kiếm ra xem thông tin username, password có hợp lệ hay không

  • Hai khối ghi dữ liệu: Tuỳ thuộc vào kết quả, thì sẽ chạy vào khối tương ứng để cập nhật dữ liệu (xem phần dưới)

Đọc dữ liệu

Lấy dữ liệu từ file và gán vào biến "data", các bạn lưu ý tích vào ô chọn key nhé. Khoá tham chiếu: Ở đây là "data", thì khi sử dụng, chúng mình sẽ sử dụng trong biểu thức, mình sẽ dùng cú pháp {{spreadSheets.data.path}}.


Ghi dữ liệu

Ở đây, mình để ô phạm vi là D{{$increment([runIndex], 2)}}

Các bạn chú ý,

  • "D" ở đây là cột của ô trạng thái mình muốn ghi vào

  • {{$increment([runIndex], 2)}}: Đây là biểu thức tính toán, khi chạy nó sẽ tính toán ra kết quả, "runIndex" là thứ tự của profile đang chạy trong lần chạy đó, $increment là 1 hàm để công thêm 2 đơn vị.

  • Kết quả ở đây sẽ là : D2, D3, ... phụ thuộc vào lần chạy

  • Và mình muốn cập nhật ô D2, (hoặc D3) thành "OK" nên mình điền "OK" ở ô giá trị sau khi chọn giá trị cụ thể