Ghi lại dữ liệu trong Excel 2007
Tôi muốn hỏi liệu có chức năng nào giúp việc ghi đè dữ liệu trong bảng tính Excel dễ dàng hơn không?
Chúng tôi sao chép một số dữ liệu cần thiết vào Excel mỗi đêm. Dữ liệu này cần được ghi đè trong một cột tương ứng với quốc gia mà nó liên quan.
Chúng tôi lập báo cáo bao gồm dữ liệu này. Mỗi ngày, một số dữ liệu được giải quyết (chúng không còn tồn tại nữa - đã biến mất) và một số dữ liệu khác được thêm vào dưới dạng dữ liệu mới.
Tôi muốn biết liệu có chức năng nào cho phép tôi phân biệt dữ liệu mới khi sao chép dữ liệu từ báo cáo trước (ví dụ: bằng màu sắc dựa trên chức năng, v.v.) hay không.
Nếu không, chúng ta sẽ phải viết lại cột này với thông tin quốc gia liên quan mỗi đêm. Cột này chứa hơn 1500 dòng. Việc này tốn rất nhiều thời gian của chúng ta.
Cảm ơn bạn về câu trả lời khả thi.
Michael
Trả lời:
Bạn có thể thực hiện việc này bằng hai macro - một macro sẽ hoạt động tự động khi bạn thay đổi thông tin trên trang tính mà bạn muốn "mã hóa màu", macro còn lại bạn phải tự tay chạy khi muốn đặt lại màu sắc để có thể bắt đầu mã hóa màu lại.
Đầu tiên là đoạn mã tự động: đoạn mã này sẽ thay đổi màu nền của tất cả các ô trên trang tính khi bạn thay đổi giá trị trong các ô đó, ví dụ như bằng phím [Del] hoặc bằng cách nhập hoặc dán thông tin mới vào. Đây là một quy trình liên quan đến sự kiện của trang tính, vì vậy để đưa nó vào sổ làm việc một cách chính xác:
Chọn trang tính mà bạn muốn sử dụng chức năng này.
Nhấp chuột phải vào tab tên trang tính và chọn [Xem mã] từ danh sách hiện ra.
Sao chép đoạn mã bên dưới và dán vào mô-đun được hiển thị cho bạn.
Nhấn [Alt]+[Q] để đóng trình soạn thảo mã.
Quan trọng : hãy lưu tệp dưới dạng sổ làm việc 'Đã bật Macro...', loại .xlsm hoặc .xlsb (hoặc loại .xls đối với phiên bản 97-2003).
Hãy thử bằng cách đơn giản thay đổi một giá trị trên bảng tính. Ô đó sẽ đổi màu. Đây là đoạn mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Các cài đặt màu tích hợp sẵn có:
'vbBlack, vbBlue, vbCyan, vbGreen, vbMagenta, vbRed, vbWhite, vbYellow
Màu nội thất mục tiêu = vbYellow
End Sub
Dưới đây là một đoạn mã thực hiện hành động được mô tả trong phần chú thích - nếu bạn không muốn sử dụng mã, bạn có thể thực hiện các bước này thủ công mỗi ngày trước khi bắt đầu nhập liệu. Thực hiện tất cả bằng tay tốn khoảng số lần nhấp chuột tương đương với việc chọn macro ([Xem] tab, Macro, chọn macro từ danh sách, nhấp vào [Chạy]) - vì vậy đó là lựa chọn của bạn.
Đoạn mã này được đặt trong một mô-đun mã thông thường, và hướng dẫn cách đặt nó vào một trong những mô-đun đó có thể được tìm thấy tại đây: http://www.contextures.com/xlvba01.html#videoreg
Đây là quy trình đơn giản:
Sub ResetCellColors()
'loại bỏ tất cả hiệu ứng đổ bóng khỏi các ô
'Điều này cũng giống như việc chọn trang tính
'Nhấp vào nút 'chọn tất cả' trong
Góc trên bên trái của tờ giấy:
' bên trái của chỉ báo cột "A" và
' phía trên chỉ báo hàng "1"
'và sau đó đặt thuộc tính Tô màu của ô thành 'Không tô màu'
'từ tab [Trang chủ].
ActiveSheet.Cells.Interior.Color = xlNone
End Sub
Comments
Post a Comment