Thứ sáu hàng tuần, Ned đưa ra một báo cáo được phân phối trong công ty của mình.

Anh ấy muốn tiêu đề của báo cáo luôn có ngày thứ Hai trước đó trong đó. Anh ấy tự hỏi làm cách nào để nó có thể hiển thị động ngày cho thứ Hai của tuần hiện tại.

Nếu Ned đang tạo báo cáo trong Excel, thì việc tính toán ngày thứ Hai vừa qua sẽ rất dễ dàng. Tuy nhiên, đây không phải là Excel; báo cáo bằng Word. Vì vậy, nhiệm vụ không có nơi nào gần như dễ dàng. Tuy nhiên, có một số cách tiếp cận bạn có thể áp dụng.

Một cách tiếp cận là thực sự tạo tài liệu Word cho báo cáo của bạn vào thứ Hai. Bạn không cần phải đưa bất cứ điều gì vào báo cáo; chỉ cần tạo tài liệu sẽ được sử dụng vào cuối tuần để tạo báo cáo.

Sau đó, bạn có thể bao gồm một trường trong tiêu đề chèn ngày tài liệu được tạo (trường CreateDate). Nó sẽ luôn phản ánh ngày thứ Hai mà tài liệu được tạo.

Nếu điều đó không phù hợp với nhu cầu của bạn (có lẽ vì lý do nào đó bạn không thể tạo tài liệu vào Thứ Hai), bạn có thể cố gắng tạo ngày bằng trường lồng nhau. Sau đây là một khả năng:

{ date \@ "MMMM { ={date \@"dd"} -5} yyyy"}

Hãy nhớ rằng mỗi cặp dấu ngoặc nhọn trường cần được nhập bằng cách sử dụng Ctrl + F9. Trường kết hợp sẽ hoạt động trong nhiều ngày, nhưng sẽ gặp vấn đề nếu thứ Sáu mà bạn tính toán trường nằm trong năm ngày đầu tiên của tháng. (Phép tính trong trường bên trong sẽ trả về giá trị âm vào những ngày đó.) Không có cách nào dễ dàng để giải quyết vấn đề này.

Cách tiếp cận đơn giản nhất là sử dụng macro để chèn ngày. Macro có thể thực hiện tính toán ngày tháng khá dễ dàng. Đây là một ví dụ về macro nhỏ nhanh chóng có thể tính toán ngày thích hợp:

Sub MondayBeforeToday()

Subtract = Choose(Weekday(Date), 6, 7, 1, 2, 3, 4, 5)

DateFormat = "dddd mm/dd/yyyy"

Selection.InsertBefore Format((Date - Subtract), DateFormat)

End Sub

Tất cả những gì bạn cần làm là định vị điểm chèn ở nơi bạn muốn ngày tháng và sau đó chạy macro. Nó có thể được chạy vào bất kỳ ngày nào trong tuần và nó sẽ luôn chèn ngày của Thứ Hai trước đó.

_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 các trang WordTips), tôi đã chuẩn bị một trang đặc biệt bao gồm thông tin hữu ích.

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

(Microsoft Word là phần mềm xử lý văn bản phổ biến nhất trên thế giới.) Mẹo này (9800) áp dụng cho Microsoft Word 97, 2000, 2002 và 2003. Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Word (Word 2007 và sau này) tại đây: