Sao chép từ Thanh tác vụ (Microsoft Excel)
Michael có thể chọn một số ô trong trang tính và Thanh Tác vụ (ở cuối trang tính) hiển thị một số phân tích về các ô đã chọn đó — những thứ như tổng hoặc trung bình của các ô. Michael tự hỏi liệu có cách nào để sao chép một giá trị từ Task Bar vào Clipboard để anh ấy có thể dán giá trị đó vào nơi khác trong trang tính hay không.
Câu trả lời ngắn gọn là không, không có cách nào để truy cập thông tin trên Thanh tác vụ. Điều đó đang được nói, có một số cách tiếp cận mà bạn có thể sử dụng để tạo lại thông tin để bạn có thể truy cập nó.
Cách giải quyết đầu tiên không liên quan đến việc sử dụng macro, nhưng bạn có thể coi nó là một chút quá mức cần thiết. (Ai nói rằng bạn không thể bắn gnat bằng bazooka trong Excel?) Cách tiếp cận này liên quan đến việc sử dụng công cụ Phân tích dữ liệu. Công cụ này được thực hiện thông qua việc sử dụng một phần bổ trợ; bạn có thể biết liệu nó có được bật trên hệ thống của mình hay không bằng cách xem tab Dữ liệu của ruy-băng, nơi bạn sẽ thấy công cụ Phân tích Dữ liệu ở phía bên phải. Nếu bạn không thấy nó, hãy làm theo các bước sau:
-
Hiển thị hộp thoại Tùy chọn Excel. (Trong Excel 2007, hãy nhấp vào nút Office và sau đó nhấp vào Tùy chọn Excel. Trong Excel 2010 và các phiên bản mới hơn hiển thị tab Tệp của dải băng và sau đó nhấp vào Tùy chọn.)
-
Ở bên trái của hộp thoại, nhấp vào Phần bổ trợ.
-
Ở cuối hộp thoại, sử dụng danh sách thả xuống Quản lý để chọn Bổ trợ Excel.
-
Nhấp vào nút Bắt đầu. Excel sẽ hiển thị hộp thoại Phần bổ trợ. (Xem Hình 1.)
-
Chọn hộp kiểm bên cạnh Analysis ToolPak.
-
Bấm OK.
Với phần bổ trợ Phân tích Dữ liệu được kích hoạt, hãy chọn các ô bạn muốn phân tích. Bạn sẽ thấy số liệu thống kê của mình trên Thanh tác vụ như bình thường. Bây giờ, hiển thị tab Dữ liệu của ruy-băng và nhấp vào công cụ Phân tích Dữ liệu.
Excel sẽ hiển thị hộp thoại Phân tích Dữ liệu. (Xem Hình 2.)
Hình 2. Hộp thoại Phân tích Dữ liệu.
Hộp thoại này không có tác dụng gì ngoại trừ liệt kê rất nhiều phân tích khác nhau mà bạn có thể thực hiện. Bạn muốn chọn tùy chọn Thống kê mô tả và sau đó bấm OK. Sau đó, Excel sẽ hiển thị hộp thoại Thống kê mô tả. (Xem Hình 3.)
Hình 3. Hộp thoại Mô tả Thống kê.
Nếu các ô bạn muốn phân tích chưa được ghi chú trong hộp Phạm vi đầu vào, hãy bấm một lần vào ô đó rồi chọn các ô trong trang tính.
Sau đó, ở gần cuối hộp thoại, hãy nhấp vào hộp kiểm Thống kê Tóm tắt. Khi bạn nhấp vào OK, Excel sẽ tạo một trang tính mới chứa tất cả các số liệu thống kê (và hơn thế nữa) có thể được hiển thị trong Thanh tác vụ. Sau đó, bạn có thể sao chép bất kỳ trang nào trong số này trở lại trang tính của mình, như mong muốn và xóa trang tính đã thêm khi bạn hoàn tất.
(Thấy chưa — tôi đã nói với bạn là nó có thể quá mức cần thiết.)
Nếu không phiền khi sử dụng macro, bạn có thể tạo một hàm do người dùng xác định sẽ trả về thông tin mong muốn. Sau đây là một trong những có thể được sử dụng:
Function Stats(R As Range, Op As String) As Long Dim sTemp As String Dim c As Range Dim sOp As String Stats = 0 On Error GoTo Done sOp = UCASE(Op) Select Case sOp Case "AVG" Stats = WorksheetFunction.Average(R) Case "CNT" For Each c In R If Not IsEmpty(c.Value) Then Stats = Stats + 1 Next c Case "MIN" Stats = WorksheetFunction.Min(R) Case "MAX" Stats = WorksheetFunction.Max(R) Case "SUM" Stats = WorksheetFunction.Sum(R) Case Else sTemp = "This function requires two parameters. " sTemp = sTemp & "The first is the cells you want evaulated. " sTemp = sTemp & "The second is the operation you want " sTemp = sTemp & "performed. You can use the following " sTemp = sTemp & "operations:" & vbCrLf & vbCrLf sTemp = sTemp & " AVG (average)" & vbCrLf sTemp = sTemp & " CNT (count of cells with values)" & vbCrLf sTemp = sTemp & " MIN (minimum)" & vbCrLf sTemp = sTemp & " MAX (maximum)" & vbCrLf sTemp = sTemp & " * SUM (sum)" & vbCrLf MsgBox sTemp End Select Done: End Function
Để sử dụng hàm, chỉ cần nhập nội dung tương tự như sau vào ô:
=Stats(B3:B7, "Min")
Bằng cách xem qua macro, bạn có thể tìm ra các mã hoạt động khác nhau có thể được chuyển cho hàm thông qua tham số thứ hai. Chức năng do người dùng xác định, theo cách riêng của nó, cũng hơi quá mức cần thiết. Tại sao? Bởi vì bạn chỉ có thể sử dụng các công thức thông thường để có được thông tin mong muốn:
=MIN(B3:B7)
Thay vào đó, bạn có thể muốn tạo một macro được gắn với một phím tắt. Sau đó, điều này có thể được sử dụng với bất kỳ ô nào được chọn để đưa thông tin mong muốn vào Clipboard:
Sub StatClip() Dim sTemp As String Dim R As Range Dim f As Variant Dim obj As New DataObject Set R = Selection Set f = Application.WorksheetFunction sTemp = "Address:" & vbTab & R.Address & vbCrLf sTemp = sTemp & "Average:" & vbTab & f.Average(R) & vbCrLf sTemp = sTemp & "Count: " & vbTab & f.Count(R) & vbCrLf sTemp = sTemp & "Min: " & vbTab & f.Min(R) & vbCrLf sTemp = sTemp & "Max: " & vbTab & f.Max(R) & vbCrLf sTemp = sTemp & "Sum: " & vbTab & f.Sum(R) & vbCrLF obj.SetText sTemp obj.PutInClipboard End Sub
Hãy nhớ rằng bạn muốn gán macro này cho một phím tắt. Bằng cách đó, bạn có thể gọi nó (sử dụng phím tắt) trong khi bạn đã chọn một số ô trong trang tính của mình. Nếu bạn gặp lỗi khi cố gắng chạy macro, điều đó chắc chắn là do bạn chưa bật Thư viện đối tượng Microsoft Forms 2.0 cho dự án của mình. Bạn sẽ muốn, trong VBA Editor, chọn Công cụ | Tài liệu tham khảo để kích hoạt thư viện cần thiết.
Khi bạn thực sự gọi macro, nó sẽ xuất hiện như thể không có gì xảy ra. Điều này là bình thường; hãy nhớ rằng thông tin đang được đưa vào Clipboard. Sau khi macro chạy, bạn cần chọn một ô khác rồi nhấn Ctrl + V để dán các nội dung Clipboard đó vào trang tính của mình.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (6232) áp dụng cho Microsoft Excel 2007, 2010, 2013, 2016, 2019 và Excel trong Office 365.