yeuthamhangxom
Thành viên tiêu biểu
- Tham gia
- 26/10/07
- Bài viết
- 517
- Được thích
- 419
- Nghề nghiệp
- Nhân viên văn phòng
(*) Người nhập vì lí do nào đó nhập số 0 vô một trong các cột sản lượng ở Sheet2 & nhấn {ENTER}Nếu như phía dưới ô mình vừa tính tổng không có số liệu (Tức ta không nhập số liệu vào dòng phía dưới) thì khi bấm nút tính tổng thì nó vẫn không tính thêm nữa được không?
Còn nếu có số liệu thì vẫn tính bình thường.
Bạn xem bổ sung thêm code nhé!
[COLOR=Gray][B]Private Sub Worksheet_Change(ByVal Target As Range)[/B]
Dim ECll As Range[/COLOR]
If Target.Value = "" Or Target.Value = 0 Then Exit Sub
[COLOR=Gray] If Intersect(Target, Union([g:g], [m:m], [s:s], [y:y], [ae:ae])) Is Nothing Or _
WorksheetFunction.CountA(Target) = 0 Then Exit Sub
Set ECll = Sheet3.[F6000].End(xlUp)(2).Offset(, -4)
With Sheet3.Range(ECll.Address)
.Resize(, 3) = Target(1, -3).Resize(, 3).Value
.Offset(, 3) = Target
.Offset(, 4) = "=if(rc[-2]=0,0,rc[-2]*rc[-1])"
End With
[B]End Sub[/B][/COLOR]
[COLOR=Gray]Option Explicit
[B]Private Sub CommandButton1_Click()[/B]
Dim Sh As Worksheet, rW As Long, eRw As Long
Set Sh = Sheet3
eRw = Sh.[F65500].End(xlUp).Row
With Sh.Cells(eRw, "D")[/COLOR]
If .Value = "" Or .Offset(, 1).Value = "" Then Exit Sub
[COLOR=Gray] If .Offset(-1).Value = "" Then
rW = 1
Else
rW = eRw - .End(xlUp).Row + 1
End If
End With
With Sh.Cells(eRw, "F").Offset(1)
.FormulaR1C1 = "=SUM(R[-" & rW & "]C:R[-1]C)"
.Font.Bold = True
End With
[B]End Sub[/B][/COLOR]
(1) Sửa xong bạn sẽ hỏi có cách nào xóa dòng 7 mà không bị lỗi. (tôi đọc code rồi)Nếu mình muốn kết quả cộng tổng hiện ra tại ô L6 thì sửa như thế nào ah? (1)
Còn nếu không dùng code mà dùng 1 công thức tại ô L6 thì có công thức nào không ạ? (thêm dòng cuối list vẫn cộng tự động) (2)