Hỏi cách bảo vệ công thức khi di chuyển ô trong bảng tính (1 người xem)

  • Thread starter Thread starter NTT382
  • Ngày gửi Ngày gửi
Liên hệ QC

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

NTT382

Thành viên mới
Tham gia
8/2/08
Bài viết
5
Được thích
0
Việc bảo vệ công thưânc bằng cách chọn project sheet thì mình biết rồi, tuy nhiên có một vấn đề đó là khi người dùng di chuyển các ô trong bảng tính thì công thức không còn chính xác nữa
VD: vùng giá trị ở mảng a1:a5 bị lệch người dùng chọn hết những ô a1:a5 rồi kéo xuống vùng a3:a8
Điều này dẫn đến các hàm liên quan đến các ô a1:a5 đều bị thay đỗi +-+-+-+

Có huynh nào biết cách nào làm cho excel không tự động thay đỗi công thức trong hàm khi người dùng di chuyển các ô trong bảng tính hay không, ko sử dụng VBA nha
 
Việc bảo vệ công thưânc bằng cách chọn project sheet thì mình biết rồi, tuy nhiên có một vấn đề đó là khi người dùng di chuyển các ô trong bảng tính thì công thức không còn chính xác nữa
VD: vùng giá trị ở mảng a1:a5 bị lệch người dùng chọn hết những ô a1:a5 rồi kéo xuống vùng a3:a8
Điều này dẫn đến các hàm liên quan đến các ô a1:a5 đều bị thay đỗi +-+-+-+

Có huynh nào biết cách nào làm cho excel không tự động thay đỗi công thức trong hàm khi người dùng di chuyển các ô trong bảng tính hay không, ko sử dụng VBA nha
Điều này đương nhiên... bởi vậy mới nói Protect sheet không phải là giải pháp bảo mật tốt ---> Đã cho nhập là người ta có thể phá được (dù vô tình)
Bạn có thể suy nghĩ thêm về hàm INDIRECT --> ví dụ thay vì dùng SUM(A1:A5), bạn thay bằng SUM(INDIRECT("A1:A5")) ---> Công thức này sẽ không thay đổi tham chiếu, cho dù người dùng có kéo vùng A1:A5 đi đâu
 
Thử dùng Indirect xem, ví dụ đơn giản với hàm Sum, thay vì ô F1=sum(A1:E1),
có thể dùng F1=SUM(INDIRECT("A"&ROW()):INDIRECT("E"&ROW())).
Có thể vận dụng để dùng trong các hàm khác đấy.
Thân chào!
---------
Chậm tay hơn Ndu rồi, xin lỗi các Bạn
 
Lần chỉnh sửa cuối:
ặc vậy thì công thức của mình lung tung lên hết khó quản lý lắm, mình nghĩ phải có một thao tác nào đó để không cho công thức bị thay đỗi khi di chuyển các ô trong bảng tính
 
ặc vậy thì công thức của mình lung tung lên hết khó quản lý lắm, mình nghĩ phải có một thao tác nào đó để không cho công thức bị thay đỗi khi di chuyển các ô trong bảng tính
Dùng công thức tôi e rằng chẳng có cách nào có thể làm được như bạn nói (chẳng lẽ cấm cut, copy, paste sao?)
Có 1 cách mà tôi cho là khá tốt:
- 1 sheet dành riêng để nhập liệu ---> Người dùng muốn kéo thả gì đó cứ để họ vô tư ---> Đặc biệt trong sheet nào không chứa bất cứ công thức nào
- 1 sheet tổng hợp dành riêng cho bạn ---> Ở đây cũng không dùng công thức, khi cần thì dùng VBA để tổng hợp thứ gì đó bạn cần ---> Sheet này được bảo vệ, chỉ có bạn mới vào được
Vì không có công thức nên đương nhiên sẽ chẳng có lổi nào cả!
Bạn nghiên cứu xem!
 
Web KT

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

Back
Top Bottom