Excel cho phép bạn hiển thị các công thức trong một trang tính đơn giản bằng cách đảm bảo rằng hộp kiểm Công thức được chọn trên tab Xem của hộp thoại Tùy chọn. Đây có thể là một cách tiện dụng để in một trang tính hiển thị các công thức được sử dụng để tạo trang tính.

Tuy nhiên, cách tiếp cận này chỉ hoạt động tốt nếu các công thức được sử dụng trong trang tính khá ngắn. Nếu các công thức dài hơn, thì việc hiểu một trang tính với các công thức được hiển thị có thể nhanh chóng trở thành một việc vặt khó chịu.

Một giải pháp là kéo các công thức từ Excel và đặt chúng trong một chương trình chẳng hạn như Word. Tại sao Word? Vì bạn có thể dễ dàng định dạng các thuộc tính văn bản (chẳng hạn như kiểu chữ và kích thước điểm) để hiển thị tốt nhất các công thức của mình. Bạn cũng có thể thêm văn bản bổ sung để giải thích các công thức, nếu muốn.

Cách đơn giản nhất để lấy công thức từ Excel sang Word là làm theo các bước sau:

  1. Trong Excel, chọn Tùy chọn từ menu Công cụ. Excel sẽ hiển thị hộp thoại Tùy chọn.

  2. Đảm bảo rằng tab Xem được chọn. (Xem Hình 1.)

  3. Đảm bảo rằng hộp kiểm Công thức được chọn.

  4. Nhấp vào OK. Excel bây giờ sẽ hiển thị các công thức.

  5. Chọn các ô có công thức bạn muốn sao chép sang Word.

  6. Nhấn Ctrl + C để sao chép các ô vào Clipboard.

  7. Chuyển sang Word.

  8. Định vị điểm chèn nơi bạn muốn thêm thông tin.

  9. Chọn Dán Đặc biệt từ menu Chỉnh sửa. Word sẽ hiển thị hộp thoại Dán Đặc biệt. (Xem Hình 2.)

  10. Chọn tùy chọn Văn bản chưa được định dạng.

  11. Nhấp vào OK.

Tại thời điểm này, các công thức của bạn có trong Word và bạn có thể thực hiện với chúng khi thấy phù hợp. Mặc dù phương pháp này hoạt động tốt, nhưng bạn có thể làm điều này lặp đi lặp lại rất khó chịu nếu bạn có một số lượng lớn công thức cần sao chép.

Nếu bạn đang ở trong tình huống như vậy, bạn sẽ có lợi khi có một macro thực sự kéo các công thức và đặt chúng trong tài liệu Word cho bạn. Macro Excel sau sẽ thực hiện điều đó:

Sub WriteFormulasToWord()

Dim Wrd As New Word.Application     Dim CellTxt As String     Dim CellAddr As String     Dim SRow As Long     Dim SCol As Long

Wrd.Visible = True     Wrd.Documents.Add

Wrd.Selection.TypeText Text:="List of the Formulas of Sheet """ _       & ActiveSheet.Name & """ in Workbook """ _       & ActiveWorkbook.Name & """."

Wrd.Selection.TypeText Text:=vbCrLf & vbCrLf

'Change the following line to pick the number of columns     For SCol = 1 To 5         'Change the following line to pick the number of rows         For SRow = 1 To 10             If Cells(SRow, SCol).HasFormula Then                 CellAddr = Chr(64 + SCol) & Trim(Str(SRow)) & vbTab                 CellTxt = ActiveSheet.Cells(SRow, SCol).Formula                 Wrd.Selection.TypeText Text:=CellAddr & CellTxt                 Wrd.Selection.TypeText Text:=vbCrLf             End If         Next SRow         Wrd.Selection.TypeText Text:=vbCrLf     Next SCol End Sub

Có một số điều cần lưu ý trong macro này. Trước hết, bạn có thể thay đổi phạm vi các hàng và cột mà macro hoạt động bằng cách thay đổi các câu lệnh For được lưu ý sử dụng cả SCol và SRow. Trong ví dụ minh họa ở trên, macro kéo các công thức từ cột 1 đến cột 5 (A đến E) và từ hàng 1 đến 10.

Ngoài ra, macro này sẽ không hoạt động bình thường trừ khi bạn thiết lập macro Excel để xử lý các tham chiếu đến các đối tượng Word. Bạn thực hiện điều đó bằng cách làm theo các bước sau trong VBA Editor:

  1. Chọn Tài liệu tham khảo từ trình đơn Công cụ. VBA hiển thị hộp thoại Tham chiếu. (Xem Hình 3.)

  2. Cuộn qua danh sách các tài liệu tham khảo cho đến khi bạn thấy một tài liệu được gọi là Thư viện Đối tượng Microsoft Word. (Có thể có một số phiên bản được bao gồm trong tên tham chiếu, chẳng hạn như Thư viện đối tượng Microsoft Word 11.0.)

  3. Đảm bảo rằng hộp kiểm bên trái của thư viện đối tượng được chọn.

  4. Nhấp vào OK.

Một lợi thế của việc sử dụng macro để thực sự kéo các công thức của bạn là bạn có thể tùy chỉnh chính xác những gì được đặt trong tài liệu Word. Trong trường hợp macro này, địa chỉ của ô được chèn, theo sau là ký tự tab, sau đó là công thức thực. Bạn có thể dễ dàng thay đổi thông tin được chèn thành bất kỳ thứ gì bạn cần trong trường hợp cụ thể của bạ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 (3190) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003. Bạn có thể tìm phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: