[Hỏi]Cách viết hàm để nó tự động tính giá trị trong 1 ô khi có giá trị thay đổi (1 người xem)

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

halley189

Thành viên mới
Tham gia
4/6/13
Bài viết
26
Được thích
1
Em vừa mới tiếp xúc với excel nên có cái này vẫn còn mập mờ. Tìm miết trên mạng không có nên phải vào đây nhờ các anh chị. Vấn đề của em cụ thể như sau:

Giả sử ô A1 của em có dãy sau : (100+300+450+200)/1000

Ô B1 là tổng kết quả của ô A1:

Em chưa biết nhiều về Excel nên hiện tại vẫn chỉ xài cách thủ công là copy giá trị ô A1 rồi sang ô B1: =(100+300+450+200)/1000 //////. Đã thế nếu có sai và sửa thì lại copy rồi dán tiếp.

Vậy có hàm gì hay công thức gì để ô B1 tự động tính công thức của ô A1 và khi ô A1 có sửa gì thì ô B1 nó cũng tự động cập nhật theo. Cái này hay ở chổ nếu em có 100 ô(A1->A100) thì sẽ đỡ được 100 bước copy giá trị từ ô A(2,3,4...100) sang ô B(2,3,4...100)

Mong các anh chị giúp đỡ. Em xin cảm ơn trước ạ!

UPDATE: Nhờ các anh chị phát triển thêm 1 chút nữa là tạo 1 hàm để mình có thể tính 1 chuỗi các phép tính của 1 ô bất kỳ

Vd: Giả sử làm 1 hàm tên là "TINH". Khi cần tính giá trị của 1 chuỗi của ô nào đó thì chỉ cần gõ "=Tinh(Ô cần tính)" thì nó sẽ tự động tính ô đó(tựa như hàm SUM vậy)
 

File đính kèm

Lần chỉnh sửa cuối:
Em vừa mới tiếp xúc với excel nên có cái này vẫn còn mập mờ. Tìm miết trên mạng không có nên phải vào đây nhờ các anh chị. Vấn đề của em cụ thể như sau:

Giả sử ô A1 của em có dãy sau : (100+300+450+200)/1000

Ô B1 là tổng kết quả của ô A1:

Em chưa biết nhiều về Excel nên hiện tại vẫn chỉ xài cách thủ công là copy giá trị ô A1 rồi sang ô B1: =(100+300+450+200)/1000 //////. Đã thế nếu có sai và sửa thì lại copy rồi dán tiếp.

Vậy có hàm gì hay công thức gì để ô B1 tự động tính công thức của ô A1 và khi ô A1 có sửa gì thì ô B1 nó cũng tự động cập nhật theo. Cái này hay ở chổ nếu em có 100 ô(A1->A100) thì sẽ đỡ được 100 bước copy giá trị từ ô A(2,3,4...100) sang ô B(2,3,4...100)

Mong các anh chị giúp đỡ. Em xin cảm ơn trước ạ!

Thử thế này xem coi đúng không

Ha ha có người chậm chân hơn ta....
 

File đính kèm

Bạn làm như sau:
Bước 1: Bấm Ctrl + F3 => Mở hộp thoại Name manage. Bạn đặt 1 name là Ct với công thức như sau
Mã:
=EVALUATE(Sheet1!$B19)
Tại C6 bạn gõ
Mã:
=Ct
 
@anh Hải: Không được rùi anh ơi! Tổng thì nó ra là đúng nhưng khi e thay đổi cái giá trị trong cột A thì cái giá trị bên cột B nó không thay đổi...Nó không tự update được.

@dhn46: Perfect ^^! Cảm ơn anh ạ! em đã làm như anh và thành công. Chân thành cảm ơn anh!
 
Lần chỉnh sửa cuối:
@anh Hải: Không được rùi anh ơi! Tổng thì nó ra là đúng nhưng khi e thay đổi cái giá trị trong cột A thì cái giá trị bên cột B nó không thay đổi...Nó không tự update được.

@dhn46: Cái =ct của anh cũng không được. Khi em gõ vào =ct thì nó hiện y nguyên giá trị bên cột A vd: (100+300+500+900+700+1000)/1000 chứ nó không tính cụ thể ra là bao nhiều :(!...
Thử lại coi sao nhá, quên mất cái macro
 

File đính kèm

Được rồi anh ơi! Em cảm ơn, do disable marco mất nên cái "tinh" của anh nó không có tác dụng. Thanks mọi người nhiều.
Theo yêu cầu của bạn qua tin nhắn, mình gởi bạn code đơn giản này để có thể linh động thêm 1 chút
Chèn 1 module vào, copy code này vào module
Cú pháp: =Tinh(ô cần tính toán)
Ví dụ tại D4= Tinh(A4)
PHP:
Function tinh(cell As String)
tinh = Evaluate(cell)
End Function
 
Theo yêu cầu của bạn qua tin nhắn, mình gởi bạn code đơn giản này để có thể linh động thêm 1 chút
Chèn 1 module vào, copy code này vào module
Cú pháp: =Tinh(ô cần tính toán)
Ví dụ tại D4= Tinh(A4)
PHP:
Function tinh(cell As String)
tinh = Evaluate(cell)
End Function

Hix. E còn gà nên ngồi cả tiếng đồng hồ vẫn chưa được. Khi em insert function của cái hàm "tinh" thì nó hiện bảng như hình vẽ...Enter thì nó lại hiện nguyên câu lệnh "=tinh(D9)" //////.Chắc phải tìm hiểu thêm /-*+/
 

File đính kèm

  • Untitled.jpg
    Untitled.jpg
    228.9 KB · Đọc: 233
Hix. E còn gà nên ngồi cả tiếng đồng hồ vẫn chưa được. Khi em insert function của cái hàm "tinh" thì nó hiện bảng như hình vẽ...Enter thì nó lại hiện nguyên câu lệnh "=tinh(D9)" //////.Chắc phải tìm hiểu thêm /-*+/

Đặt con trỏ chuột vào cell E9, bấm tổ hợp phím Ctrl + Shift + ~ rồi bấm F2Enter
 
Ọc ọc!Quái lạ. Hôm trước làm y theo kiểu anh Hải chỉ thì nó không được, giờ xoá hết làm lại từ đầu thì lại được.chả hiểu sao nữa.^^!!
Có 1 cái lạ là hàm "tinh" của mình có trong thư viện, có thể thao tác được nhưng khi gõ lệnh =tin(chưa gõ chữ "h" cuối cùng) thì phía dưới nó chả hiện cái hàm nào mang tên "tinh" cả. Đại loại như khi mình gõ hàm =Sum thì nó hiện ở phía dưới 1 lô 1 lốc nào là SUM,SUMIF,SUMIFS vv...:D....
 
Theo yêu cầu của bạn qua tin nhắn, mình gởi bạn code đơn giản này để có thể linh động thêm 1 chút
Chèn 1 module vào, copy code này vào module
Cú pháp: =Tinh(ô cần tính toán)
Ví dụ tại D4= Tinh(A4)
PHP:
Function tinh(cell As String)
tinh = Evaluate(cell)
End Function

Anh quanghai1969 có thể cho em hỏi thêm về chủ đề trên được không ạ, em cũng làm như anh thì thấy OK, anh có thể giúp em phát triển thêm như thế này được không! ( chiều dài của con đường A:2*3+2--> ra ô giá trị đúng) nếu ( chiều dài của con đường A: --> ra ô giá trị bằng 0) anh giúp em với, em cùi Excel lắm ! thanks anh
 

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

Back
Top Bottom