Khi bạn đang làm việc trên trang tính, sao chép và di chuyển thông tin từ nơi này sang nơi khác, bạn có thể tự hỏi liệu có cách nào để sao chép hoặc di chuyển vùng chọn mà Excel không thay đổi tất cả các tham chiếu trong vùng chọn hay không. Câu trả lời, tất nhiên, là nó phụ thuộc. (Bạn không yêu thích điều đó về Excel sao?) Hãy xem cách bạn có thể sao chép và di chuyển các lựa chọn trong Excel.

Nếu bạn đang sao chép một vùng chọn, thì Excel sẽ cập nhật tất cả các tham chiếu tương đối trong vùng chọn khi bạn dán nó. Giải pháp là đảm bảo rằng tất cả các tham chiếu trong vùng chọn là tuyệt đối trước khi thực hiện sao chép và dán. Thực hiện thay đổi công thức bằng tay thật tẻ nhạt. Bạn có thể sử dụng macro sau để chuyển đổi tất cả các công thức trong vùng chọn thành tương đương tuyệt đối của chúng:

Sub ConvertToAbsolute()

Dim c As Variant     Application.ScreenUpdating = False     For Each c In Selection         c.Value = Application.ConvertFormula(c.Formula, _           xlA1, , xlAbsolute)

Next c     Application.ScreenUpdating = True End Sub

Khi macro này được chạy, bạn có thể sao chép và dán lựa chọn mà không cần Excel thực hiện bất kỳ cập nhật nào đối với tham chiếu. Sau khi dán xong, bạn có thể thay đổi các tham chiếu trong vùng chọn (và trong phạm vi gốc, nếu nó vẫn tồn tại) bằng cách chọn phạm vi và áp dụng macro này:

Sub ConvertToRelative()

Dim c As Variant     Application.ScreenUpdating = False     For Each c In Selection         c.Value = Application.ConvertFormula(c.Formula, _           xlA1, , xlRelative, c)

Next c     Application.ScreenUpdating = True End Sub

Macro này sẽ thay đổi tất cả các công thức trong phạm vi đã chọn thành tương đương của chúng. Hãy nhớ rằng điều này sẽ ảnh hưởng đến tất cả các công thức — có nghĩa là nếu các công thức trong phạm vi chứa cả tham chiếu tương đối và tuyệt đối, thì tất cả chúng sẽ là tương đối khi macro này được thực hiện.

Nếu bạn đang di chuyển một vùng chọn, thì Excel sẽ không cập nhật các tham chiếu ô trong quá trình di chuyển. Bạn có thể di chuyển bằng cách chọn phạm vi và sử dụng bàn phím (nhấn Ctrl + X để cắt và sau đó Ctrl + V để dán vùng chọn) hoặc chuột (kéo vùng chọn đến vị trí mới).

Trong cả hai trường hợp, Excel để các tham chiếu trong vùng chọn giống hệt nhau — tương đối hoặc không — mà không cần cập nhật.

Cho đến nay tôi đã thảo luận về những gì Excel làm với các tham chiếu trong vùng chọn được sao chép hoặc di chuyển. Điều gì về tham chiếu đến thông tin trong lựa chọn? Nếu bạn đang sao chép, thì Excel sẽ để lại các tham chiếu trỏ đến phạm vi gốc. Nếu bạn đang di chuyển một lựa chọn, thì Excel sẽ cập nhật các tham chiếu đến lựa chọn đó, bất kể chúng là tương đối hay tuyệt đối. Nếu bạn không muốn thông tin được cập nhật trong quá trình di chuyển, thì giải pháp là tạo một bản sao của phạm vi và sau đó xóa bản gố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 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 (11804) á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: