Làm sao kiểm tra được công thức!

Liên hệ QC

Duong_VBA

Thành viên chính thức
Tham gia
10/11/07
Bài viết
89
Được thích
26
Các bác cao thủ giúp em cách kiểm tra công thức. Ví dụ: từ B1 đến B1000, ô Bj có công thức là "= (Aj*3+Cj*2+Fj)/ Hj công thức này tham chiếu tương ứng. Có cách nào để kiểm tra ô Bj bất kỳ hoặc tất cả các ô B xem chúng đều có công thức không và tham chiếu đều đúng quy định như trên không (Tức là cùng hàng j tại các ô A; C; F như trên)
(Bảng tính của em có rất nhiều công thức có thể do ai đó hoặc mình chỉnh sửa làm sai lệch công thức hoặc sai lệch tham chiếu)
Em nghĩ chắc phải dùng VBA!
Cảm ơn các bác!
 
Việc kiễm tra xem cell có công thức ko thì đơn giãn lắm: Bấm F5 đễ gọi hộp Goto, chọn Special và đánh dấu Formula...
Còn vụ tham chiếu đúng quy định thì đã có chức năng Error Checking cũa Excel làm việc thầm lặng rồi, bạn ko phải lo
Lấy ví dụ: lý ra tại Bj mà công thức là (Aj*3+Cj*2+Fj+1)/ Hj ... nghĩa là ko tương ứng hàng cột với các cell khác thì cell này sẽ bị đánh dấu ngay tức khắc... Ko tin bạn cứ cố tình sữa 1 cell xem thử
ANH TUẤN
 
Duong_VBA đã viết:
Các bác cao thủ giúp em cách kiểm tra công thức. Ví dụ: từ B1 đến B1000, ô Bj có công thức là "= (Aj*3+Cj*2+Fj)/ Hj công thức này tham chiếu tương ứng. Có cách nào để kiểm tra ô Bj bất kỳ hoặc tất cả các ô B xem chúng đều có công thức không và tham chiếu đều đúng quy định như trên không (Tức là cùng hàng j tại các ô A; C; F như trên)
(Bảng tính của em có rất nhiều công thức có thể do ai đó hoặc mình chỉnh sửa làm sai lệch công thức hoặc sai lệch tham chiếu)
Em nghĩ chắc phải dùng VBA!
Cảm ơn các bác!

Menu Tools -------> Formula Auditing ------->Trace Precedents Chính là công cụ soát công thức đó .
Thân !
 
Bác giúp em đoạn code VBA để vào Goto Special đánh dấu Forumals
và đoạn mã vào Opition đánh dấu các mục của Error Cheking
Thanks!
 
Hãy tự thu macro xem sao, bạn!

Bác giúp em đoạn code VBA để vào Goto Special đánh dấu Forumals
. . .!
Bạn hãy tự dùng bộ thu xem sao, này nha:
Trước tiên bạn cần tạo bốn loại dữ liệu mà công thức có thể trả về, bằng cách sau:
Tại ô A1 nhập số 8; A2: 6;
Tại B1: nhập công thức = A1/5 ;
Tại C1: nhập công thức =A1<=B1;
Chọn B1:C1 &kéo fills tới B6:C6;
Chọn A1:A2 & kéo đến A5;
Bạn sửa lại B6 là =A6 & "A" (để có 1 ô công thức dạng text!)
Cuối cùng bạn gán 1 hàm lookup() gì đó vô A2 để nhận được KQ #N/A;

Bạn có thể xoa tay & tiến hành dùng bộ thu macro với 4 lệnh goto => Special => formular => (Numbers; Text; Logicals; Errors)
Đọc & nghiền ngẫm với tác phẩm của mình!
PHP:
Option Explicit
Sub GoToSpecial()
    Cells.Select
    Selection.SpecialCells(xlCellTypeFormulas, 1).Select
 ' Kết quả: B1, B3:B4 được kích hoạt'
    Cells.Select
    Selection.SpecialCells(xlCellTypeFormulas, 2).Select
 ' Kết quả: B6 được kích hoạt'
    Cells.Select
    Selection.SpecialCells(xlCellTypeFormulas, 4).Select
'Kết quả: C1, C3:C4 & C6 được kích hoạt'
    Cells.Select
    Selection.SpecialCells(xlCellTypeFormulas, 16).Select
'Kết quả: A2:C2 & B5:C5 được kích hoạt'
End Sub

Chúc tân xuân nhiều niềm vui!
 
Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom