Linda hỏi liệu có cách nào để chỉ tính sổ làm việc đang hoạt động không.

Khi một recalc được thực hiện bởi Excel, nó sẽ tính toán lại tất cả các sổ làm việc đang mở của cô ấy và nếu chúng là những sổ làm việc rất lớn, đôi khi có thể mất hơn mười lăm phút để tính lại. Nếu cô ấy có thể giới hạn những gì được tính toán lại, thì quá trình rõ ràng sẽ chạy nhanh hơn.

Thật không may, không có phương pháp trực tiếp để chỉ tính toán một sổ làm việc cụ thể. Tuy nhiên, bạn có thể chỉ tính toán trang tính đang hoạt động, nếu muốn. Đầu tiên, hãy đặt chế độ tính toán lại thành thủ công bằng cách làm theo các bước sau:

  1. 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.)

  2. Bấm vào vùng Công thức ở bên trái của hộp thoại. (Xem Hình 1.)

  3. Trong phần Tùy chọn Tính toán của hộp thoại, hãy đảm bảo rằng nút radio Thủ công được chọn.

  4. Nhấp vào OK.

Giờ đây, lần duy nhất sổ làm việc của bạn (trên thực tế, tất cả các sổ làm việc đang mở của bạn) sẽ được tính lại là khi bạn nhấn F9. Nếu bạn chỉ muốn tính toán lại trang tính hiện tại, hãy nhấn Shift + F9.

Excel cũng cung cấp các hàm macro cho phép bạn thực hiện bất kỳ điều nào trong ba việc sau: tính toán tất cả các sổ làm việc đang mở, tính toán một trang tính cụ thể trong sổ làm việc hoặc tính toán một phạm vi ô được chỉ định trên một trang tính. Với kiến ​​thức này, bạn có thể tạo một macro sẽ lặp qua tất cả các trang tính trong một sổ làm việc và tính toán lại từng trang.

Macro sau đặt chế độ tính toán thành thủ công (vì vậy các sổ làm việc khác sẽ không tính toán) và sau đó lặp lại và tính toán từng trang tính của sổ làm việc đang hoạt động.

Sub CalcBook()

Dim wks As Worksheet     Application.Calculation = xlManual     For Each wks In ActiveWorkbook.Worksheets         wks.Calculate     Next     Set wks = Nothing End Sub

Nếu bạn tin rằng bạn có thể muốn tính toán các phần khác nhau của sổ làm việc của mình vào những thời điểm khác nhau, bạn có thể mở rộng macro để nó thực hiện bất kỳ loại tính toán nào bạn có thể muốn:

Sub CalcWhat()

Dim iAnsure As Integer

Application.Calculation = xlManual     iAnsure = InputBox("1 = Calculate A Used Range" _       & vbCrLf & _       "2 = Calculate This Worksheet" _       & vbCrLf & _       "3 = Calculate This Workbook" _       & vbCrLf & _       "4 = Calculate All Workbooks in Memory" _       & vbCrLf & vbCrLf & _       "Input Your Selection Number From Above" _       & vbCrLf & "Then Click OK", _       "Calculate What?", "Input Number Please", _       5000, 5000)



Select Case iAnsure         Case 1 'Range Only             Selection.Calculate         Case 2 'Worksheet Only             ActiveSheet.Calculate         Case 3 'Workbook Only             For Each wks In ActiveWorkbook.Worksheets                 wks.Calculate             Next         Case 4 'All Open Workbooks             Application.CalculateFull         End     End Select End Sub

Macro này trình bày một hộp đầu vào nhắc người dùng về loại tính toán lại được mong muốn. Khi người dùng nhập một số từ 1 đến 4, kiểu tính toán lại mong muốn sẽ được thực hiện.

_Lưu ý: _

Nếu bạn muốn biết cách sử dụng các macro được mô tả trên trang này (hoặc trên bất kỳ trang nào khác trên trang ExcelTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.

Mẹo này (6752) áp dụng cho Microsoft Excel 2007, 2010, 2013 và 2016.

Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện menu cũ hơn của Excel tại đây: