Đếm số lần click cell có hyperlink. (6 người xem)

Liên hệ QC

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

nokia6230ivn

Thành viên chính thức
Tham gia
16/5/07
Bài viết
54
Được thích
8
Chào các bác,
Em có 1 file excel sử dụng hyperlink để link đế nhiều file dữ liệu khác ở cùng thư mục.
Theo thời gian, các file dữ liệu ngày càng nhiều thêm.
Có cách nào để đếm số lần click hyperlink không các bác nhỉ?
Khi đó em sẽ biết được hyperlink nào ít dùng tới sẽ xóa bớt file dữ liệu.
Nhờ các bác chỉ giúp!
(Em đã tham khảo bài này nhưng ko phù hợp http://www.giaiphapexcel.com/forum/showthread.php?80494-Click-cell-tăng-giá-trị-cell-thêm-1-đơn-vị)
 
Chào các bác,
Em có 1 file excel sử dụng hyperlink để link đế nhiều file dữ liệu khác ở cùng thư mục.
Theo thời gian, các file dữ liệu ngày càng nhiều thêm.
Có cách nào để đếm số lần click hyperlink không các bác nhỉ?
Khi đó em sẽ biết được hyperlink nào ít dùng tới sẽ xóa bớt file dữ liệu.
Nhờ các bác chỉ giúp!
(Em đã tham khảo bài này nhưng ko phù hợp http://www.giaiphapexcel.com/forum/showthread.php?80494-Click-cell-tăng-giá-trị-cell-thêm-1-đơn-vị)
Tôi nghĩ chỉ cần dùng thủ tục selection_change() là đủ!! Hoặc là muốn khác thì bạn phải đưa file của bạn lên đây!
 
Hay quá!
Bạn có thể hướng dẫn chi tiết cách làm được không?
 
có lẽ không có cách khác dù làm cách này chưa hẳn là chính xác. khi di chuyển ô đến ô chứa hyperlink (hoặc giữ chuột khi chọn) thì hyperlink không kích hoạt nhưng selectionchange vấn xảy ra.
Vậy thì cách này thử
Mã:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
  If Not Target Is Nothing Then Target.Parent.Offset(0, 5).Value = Target.Parent.Offset(0, 5).Value + 1
End Sub
 
Mình thấy bài này hay quá, vậy @vu_tuan_manh_linh cho mình hỏi tại sao kết quả lại hiện ra ở cột L?
Muốn thay đổi thì phải làm như nào?
Kết quả trả về cột L là do dòng này:
Target.Offset(0, 5).Value = Target.Offset(0, 5).Value + 1
Bạn muốn kết quả trả về cột nào thì thay đổi dòng trên là được.
 
Vậy thì cách này thử
Mã:
Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
  If Not Target Is Nothing Then Target.Parent.Offset(0, 5).Value = Target.Parent.Offset(0, 5).Value + 1
End Sub
Bác ạ,
Em làm theo hướng dẫn của bác. Chức năng đếm thì chạy ngon.
Có điều xuất hiện lỗi đối (như hình đính kèm) đối với nhiều thao tác như: chọn nhiều cell, sort...
Nhờ bác xem hướng dẫn khác phục lỗi em với...
Tks bác.
 

File đính kèm

  • Error.jpg
    Error.jpg
    61.2 KB · Đọc: 4
Bạn sữa lại code thành như sau:
Mã:
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 7 And Target.Count = 1 Then
        If Target.Value <> "" Then
            Target.Offset(0, 5).Value = Target.Offset(0, 5).Value + 1
        End If
    End If
End Sub

PS: Lạ nhỉ, sao Excel 2007 trên máy này của mình không bắt được sự kiện Workbook/Worksheet_FollowHyperLink nhỉ ???
Vì vậy code trên vẫn chạy không đúng khi ta select và click 1 cell hyperlink nhiều lần
 
Lần chỉnh sửa cuối:
Cảm ơn bác, đã khắc phục được lỗi đã nêu ở trên.
Nhưng khi consor bàn phím đưa vô cell thì vẫn nhảy, dù chưa click. Có khắc phục được không bác nhỉ?
 
Bạn dùng Office gì ?
 
Bạn test thử event Worksheet_FollowHeperlink có được Excel gọi kg ?
 
Web KT

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

Back
Top Bottom