Tính tổng từ G3 đến vị trí kích chuột

Liên hệ QC

songiang5011

Thành viên mới
Tham gia
6/7/21
Bài viết
43
Được thích
10
Nhờ anh chị trong diễn đàn giúp em, em muốn tính tổng trong phạm vi từ ô G3 đến AK3, nhưng khi em kích chuột bất kỳ, ví dụ em kích vào ô M9 thì nó công thức sẽ hiểu là tính từ ô G3 đến M3 hiện kết quả ở ô D2. mong anh chị trong diễn dàn giúp đỡ em,
Em cám ơn 1649420936610.png
 

File đính kèm

  • Xin giúp đỡ..xlsb
    8.2 KB · Đọc: 8
Nhờ anh chị trong diễn đàn giúp em, em muốn tính tổng trong phạm vi từ ô G3 đến AK3, nhưng khi em kích chuột bất kỳ, ví dụ em kích vào ô M9 thì nó công thức sẽ hiểu là tính từ ô G3 đến M3 hiện kết quả ở ô D2. mong anh chị trong diễn dàn giúp đỡ em,
Em cám ơn View attachment 274215
Kích chuột vào M9 mà lại tính là M3, vụ này xương đây.
 
Upvote 0
Upvote 0
khi kích chuột vào ô nào bất kỳ, chỉ lấy cột, khi kích ô M9 hay M19, M900...., thì kết quả sẽ tính là từ G3 đên M3

Thử code này:

PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("D2").Value = 0
If Target.Count = 1 Then
        If Target.Column >= 7 And Target.Column <= 37 Then
            Range("D2").Value = Application.Sum(Range(Cells(3, 7), Cells(3, Target.Column)))
        End If
End If

End Sub
 
Upvote 0
Thử code này:

PHP:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Range("D2").Value = 0
If Target.Count = 1 Then
        If Target.Column >= 7 And Target.Column <= 37 Then
            Range("D2").Value = Application.Sum(Range(Cells(3, 7), Cells(3, Target.Column)))
        End If
End If

End Sub
dạ em cám ơn anh ạ, đúng kết quả em muốn rùi ạ, anh cho em hỏi thêm bây giờ có cách nào trả kết quả ra luôn hiện ở đầu con trỏ chuột không ạ( không cần trả ô D2), mong anh giúp đỡ thêm ạ
 
Upvote 0
Kế đó sẽ là đổi số thành chữ, rồi đọc luôn số, rồi đọc bằng tiếng Việt. :p
dạ, em được code anh Phuocam là hạnh phúc lắm rồi, chỉ là hỏi thêm nếu các anh có cách hiện ngay đầu con trỏ chuột thì càng tốt, để em đỡ phải nhìn đi nhìn lại ô D2 cho đỡ mỏi mắt thôi, em xin cám ơn các anh ạ
 
Upvote 0
dạ, em được code anh Phuocam là hạnh phúc lắm rồi, chỉ là hỏi thêm nếu các anh có cách hiện ngay đầu con trỏ chuột thì càng tốt, để em đỡ phải nhìn đi nhìn lại ô D2 cho đỡ mỏi mắt thôi, em xin cám ơn các anh ạ
"Hiện ở đầu con trỏ chuột" có nghĩa là thế nào? Hãy tập cách nói rõ nói cụ thể.

Là:
- ở chỗ trỏ chuột sẽ hiện lên tooltip như trong hình? Rồi vài giây sau thì biến mất?

cortany.jpg

- là ở ô được chọn sẽ có giá trị tổng? Thế không đề phòng tay chọn nhầm ô đã có dữ liệu quan trọng à? Rồi nó bị thay thế bởi cái tổng vớ vẩn?
 
Upvote 0
Em đang mò xem là chỉ rê con chỏ chuột đến đâu (chưa cần bấm) là đã hiện kết quả luôn đến đấy rồi mà chưa được.

Nếu select thì có thể dùng InputMessage của Data Validation.
Nếu hover thì có thể dùng cell comments

Chỉ là mọt thời gian sau, bạn có thể sẽ lên đây mếu máo: "huhu, file chạy chậm, mở lên nó quay mòng mòng"
 
Upvote 0
dạ, em được code anh Phuocam là hạnh phúc lắm rồi, chỉ là hỏi thêm nếu các anh có cách hiện ngay đầu con trỏ chuột thì càng tốt, để em đỡ phải nhìn đi nhìn lại ô D2 cho đỡ mỏi mắt thôi, em xin cám ơn các anh ạ
Tôi nghĩ ghi vào comment của cell rồi cho hiện nó khi trỏ chuột vào.
Bài đã được tự động gộp:

Sau bình luận của bác Vet chỉ nửa giây
 
Upvote 0
"Hiện ở đầu con trỏ chuột" có nghĩa là thế nào? Hãy tập cách nói rõ nói cụ thể.

Là:
- ở chỗ trỏ chuột sẽ hiện lên tooltip như trong hình? Rồi vài giây sau thì biến mất?

View attachment 274220

- là ở ô được chọn sẽ có giá trị tổng? Thế không đề phòng tay chọn nhầm ô đã có dữ liệu quan trọng à? Rồi nó bị thay thế bởi cái tổng vớ vẩn?
dạ, hiện kiểu như comment ý ạ
 
Upvote 0
dạ, hiện kiểu như comment ý ạ
Nếu chọn vùng nhiều ô thì chỉ xét ô ở bên trái trên cùng. Nếu ô được xét trước cột G hoặc sau cột AK thì chỉ xóa comment cuối cùng.
Mã:
Private lastCell As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not lastCell Is Nothing Then lastCell.ClearComments

    Set lastCell = Target.Cells(1, 1)
    
    With lastCell
        If .Column >= 7 And .Column <= 37 Then
            .AddComment.text CStr(Application.Sum(Me.Range("G3").Resize(1, .Column - 6)))
        Else
            Set lastCell = Nothing
        End If
    End With
End Sub
 
Upvote 0
...................................
Mã:
Private lastCell As Range

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Not lastCell Is Nothing Then lastCell.ClearComments

    Set lastCell = Target.Cells(1, 1)
    Range("D2").Value = lastCell.Address
    With lastCell
        If .Column >= 7 And .Column <= 37 Then
            .AddComment.text CStr(Application.Sum(Me.Range("G3").Resize(1, .Column - 6)))
        Else
            Set lastCell = Nothing
        End If
    End With
End Sub
dạ, tuyệt quá, em cám ơn anh
 
Upvote 0
Tôi nghĩ ghi vào comment của cell rồi cho hiện nó khi trỏ chuột vào.
...
Như tôi đã nói ở dòng cuối bài #13:
Làm mấy cái kiểu hiện này thì lúc đóng file phải xoá chúng hết.
Nếu không thì một thời gian sau sẽ có một đống rác.

Nếu là tôi thì tôi lập comments cho cả nhóm G3:AK3. Mỗi ô là tổng từ G3 đến đó.
Lập sự kiện change của các cells này để tính lại nếu cần.
 
Upvote 0
Nếu không thì một thời gian sau sẽ có một đống rác.
Dọn đống rác này nhanh mà. Chọn vùng chứa tất cả comment cần xóa, có thể chọn vùng dư ra rất nhiều không cần chính xác -> phải chuột -> chọn Delete Comment. Xóa trong 1 nốt nhạc. :D

Về thao tác xóa rác thì xóa đống rác có 1 rác và đống rác có 10 rác gần như là như nhau.
 
Upvote 0
Web KT

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

Back
Top Bottom