Google Sheets Tips

Cách Chia Sẻ & Phân Quyền Google Sheets Cho Team: Hướng Dẫn Chi Tiết 2026

Tuân HoangTuân Hoang
19 tháng 4, 2026
12 phút đọc
Cách Chia Sẻ & Phân Quyền Google Sheets Cho Team: Hướng Dẫn Chi Tiết 2026

Chia sẻ Google Sheets cho cả team mà không kiểm soát được ai sửa gì — đó là công thức dẫn đến dữ liệu loạn, công thức hỏng.

Hướng dẫn đầy đủ về chia sẻ và phân quyền Google Sheets cho team: từ cơ bản đến nâng cao với Protected Ranges và Apps Script 2026.

Các Cấp Độ Quyền Truy Cập Trong Google Sheets

Google Sheets có 4 mức quyền chính khi chia sẻ file:

Quyền Xem Comment Chỉnh sửa Chia sẻ tiếp Xóa file
Viewer
Commenter
Editor✅*
Owner

*Editor có thể chia sẻ tiếp trừ khi Owner tắt quyền này.

Cách Chia Sẻ Google Sheets Cơ Bản

Chia Sẻ Với Người Cụ Thể

  1. Mở file Google Sheets
  2. Click nút Share (góc trên bên phải)
  3. Nhập email người cần chia sẻ
  4. Chọn quyền: Viewer / Commenter / Editor
  5. Bỏ tick "Notify people" nếu không muốn gửi email thông báo
  6. Click Share

Chia Sẻ Với Cả Tổ Chức (Google Workspace)

Nếu dùng Google Workspace (tài khoản công ty), bạn có thể chia sẻ với:

  • Anyone with the link: Ai có link đều xem được (không cần Google account)
  • Anyone in [your organization]: Chỉ người trong cùng domain công ty
  • Specific people: Chỉ những email được liệt kê

Giới Hạn Quyền Chia Sẻ Tiếp

Để ngăn Editor chia sẻ file cho người khác:

  1. Click Share → Settings (biểu tượng bánh răng)
  2. Bỏ tick "Editors can change permissions and share"
  3. Save

Protected Ranges — Bảo Vệ Vùng Dữ Liệu Quan Trọng

Đây là tính năng quan trọng nhất để phân quyền nâng cao: cho phép Editor chỉnh sửa một số vùng nhất định, các vùng còn lại bị khóa.

Cách Tạo Protected Range

  1. Chọn vùng ô cần bảo vệ (ví dụ: cột A và B chứa công thức)
  2. Vào menu Data → Protect sheets and ranges
  3. Click Add a sheet or range
  4. Đặt tên mô tả (ví dụ: "Công thức tính tổng - không chỉnh sửa")
  5. Click Set permissions
  6. Chọn: "Restrict who can edit this range"
  7. Thêm email những người được phép chỉnh sửa vùng này

Use Cases Thực Tế

Tình huống Vùng bảo vệ Ai được chỉnh sửa
Sheet tổng hợp doanh thuToàn bộ sheet (tính toán tự động)Chỉ Manager
Nhập liệu bán hàngCột A-E (tiêu đề, công thức)Chỉ Admin
Bảng lương nhân viênCột lương, hệ sốChỉ Kế toán trưởng
KPI trackingCông thức KPIChỉ HR Manager

Bảo Vệ Cả Sheet (Tab)

Để khóa toàn bộ một tab (sheet):

  1. Vào Data → Protect sheets and ranges
  2. Chọn Sheet thay vì Range
  3. Chọn sheet muốn bảo vệ
  4. Thiết lập quyền tương tự
  5. Có thể tick "Except certain cells" để cho phép chỉnh sửa một số ô cụ thể

Shared Drives — Quản Lý File Cấp Tổ Chức

Nếu dùng Google Workspace, Shared Drives (trước đây là Team Drives) là giải pháp tốt hơn chia sẻ file thông thường:

Ưu Điểm Shared Drives

  • File thuộc về tổ chức: Không bị mất khi nhân viên nghỉ việc
  • Phân quyền theo nhóm: Manager / Content / Viewer
  • Dễ quản lý: Một nơi chứa tất cả file của team
  • Offline sync: Toàn bộ thành viên đều sync được

Cấp Độ Quyền Trong Shared Drive

  • Manager: Quản lý thành viên, xóa Drive
  • Content Manager: Upload, chỉnh sửa, xóa file (không quản lý thành viên)
  • Contributor: Upload và chỉnh sửa file
  • Commenter: Xem và comment
  • Viewer: Chỉ xem

Apps Script — Tự Động Hóa Quản Lý Quyền

Khi team lớn, quản lý quyền thủ công rất tốn thời gian. Apps Script giúp tự động hóa:

Script 1: Tự Động Chia Sẻ Khi Thêm Vào Danh Sách

function shareWithNewMember() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const memberSheet = ss.getSheetByName('Team Members');
  const dataSheet = ss.getSheetByName('Sales Data');

  // Lấy danh sách email từ sheet Team Members
  const emails = memberSheet.getRange('B2:B100').getValues()
    .flat().filter(e => e !== '');

  // Lấy quyền hiện tại
  const editors = dataSheet.getEditors().map(u => u.getEmail());

  // Chia sẻ cho người chưa có quyền
  emails.forEach(email => {
    if (!editors.includes(email)) {
      dataSheet.addEditor(email);
      Logger.log('Shared with: ' + email);
    }
  });
}

Script 2: Thu Hồi Quyền Tự Động Khi Nhân Viên Nghỉ

function revokeAccessForFormerEmployee() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const emailToRevoke = 'former.employee@company.com';

  // Thu hồi quyền Editor
  ss.removeEditor(emailToRevoke);

  // Thu hồi quyền Viewer
  ss.removeViewer(emailToRevoke);

  // Ghi log
  const logSheet = ss.getSheetByName('Access Log');
  logSheet.appendRow([
    new Date(),
    emailToRevoke,
    'Revoked',
    Session.getActiveUser().getEmail()
  ]);

  Logger.log('Access revoked for: ' + emailToRevoke);
}

Script 3: Báo Cáo Danh Sách Người Có Quyền

function generateAccessReport() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const reportSheet = ss.getSheetByName('Access Report')
    || ss.insertSheet('Access Report');

  reportSheet.clearContents();
  reportSheet.appendRow(['Email', 'Role', 'Generated At']);

  ss.getOwners().forEach(u =>
    reportSheet.appendRow([u.getEmail(), 'Owner', new Date()]));
  ss.getEditors().forEach(u =>
    reportSheet.appendRow([u.getEmail(), 'Editor', new Date()]));
  ss.getViewers().forEach(u =>
    reportSheet.appendRow([u.getEmail(), 'Viewer', new Date()]));

  Logger.log('Report generated with ' +
    (reportSheet.getLastRow() - 1) + ' entries');
}

Best Practices Phân Quyền Google Sheets Cho Team

1. Nguyên Tắc Least Privilege

Chỉ cấp quyền tối thiểu cần thiết. Nếu nhân viên chỉ cần đọc số liệu → cấp Viewer, không phải Editor.

2. Tách Biệt Data và Dashboard

  • Sheet "Raw Data": chỉ người nhập liệu có quyền Edit
  • Sheet "Dashboard": kéo dữ liệu tự động từ Raw Data, mọi người View
  • Không ai có thể vô tình sửa dashboard

3. Đặt Tên Protected Range Rõ Ràng

Thay vì "Protected Range 1", đặt tên: "Công thức tổng hợp - Chỉ Admin chỉnh sửa". Khi có cảnh báo, mọi người hiểu ngay tại sao bị chặn.

4. Review Quyền Định Kỳ

Mỗi 3 tháng, chạy script generateAccessReport() để kiểm tra ai đang có quyền gì. Thu hồi quyền của nhân viên đã nghỉ ngay trong ngày.

5. Dùng Groups Thay Vì Individual Email

Tạo Google Group (team-sales@company.com) và chia sẻ cho Group. Khi có nhân viên mới, chỉ cần thêm vào Group là xong.

Quản Lý Team Kinh Doanh Chuyên Nghiệp Hơn

SheetStore cung cấp phân quyền chi tiết theo vai trò: Admin / Manager / Nhân viên / Kế toán — không cần tự viết script.

Xem Demo Phân Quyền

Khi Nào Google Sheets Không Đủ Cho Phân Quyền?

Google Sheets phân quyền theo file, không theo dữ liệu. Các giới hạn:

  • Không thể cho nhân viên A xem khách hàng khu vực miền Nam, nhân viên B xem miền Bắc trong cùng một sheet
  • Không có role-based access control (RBAC) thực sự
  • Không có audit trail đầy đủ (ai xem gì, lúc nào)
  • Không thể giới hạn download/export

Khi cần phân quyền theo dữ liệu (data-level security), cần chuyển sang phần mềm chuyên dụng như SheetStore với phân quyền chi tiết theo vai trò và vùng dữ liệu.

Cần Phân Quyền Nâng Cao Cho Team Bán Hàng?

SheetStore phân quyền theo vai trò, theo chi nhánh, theo danh mục sản phẩm — không cần viết code.

Xem thêm: Tất cả bài hướng dẫn Google Sheets | Phần mềm quản lý bán hàng SheetStore

Chia sẻ bài viết:

Tuân Hoang

Tuân Hoang

Đội ngũ SheetStore

Bạn thấy bài viết hữu ích?

Đăng ký nhận thông báo khi có bài viết mới.

Nhận thông báo khi có bài viết mới. Không spam, hứa luôn! 😊

Bình luận (0)

Vui lòng đăng nhập để tham gia thảo luận