Computer - Communication - Control. 3C INC
 
Search
Nhiều người quan tâm
Cách chuyển đổi font chữ, từ font ABC hoặc VNI sang Unicode
Thủ thuật EXCEL (P1)
Các thủ thuật hay nhất trong Excel
Chuyển đổi file PDF thành file Word cực nhanh!
Microsoft Excel 2003 và những tùy chọn có thể bạn chưa biết
Cách tạo bảng tạm thời trong Excel

Tin học văn phòng


In bài này Gửi bài viết này cho bạn bè
(Thứ Hai, 16/10/2006-2:43 PM)
Thao tác với Excel
Hỏi: Tôi có một bảng tính có cột mã số hàng hoá được nhập liệu hàng ngày. Tôi muốn kiểm tra việc nhập liệu có bị sai so với cột mã số hàng hoá chuẩn hay không thì phải làm sao?

Đáp:

Excel cho phép ta khai báo một số hàm sự kiện cho một số sự kiện trên từng worksheet Excel, thí dụ hàm Worksheet_SelectionChange() sẽ được kích hoạt mỗi lần ta thay đổi cell làm việc trong worksheet tương ứng, do đó bạn có thể kiểm tra việc nhập liệu trong 1 cột nào đó có đúng qui định không thông qua hàm xử lý sự kiện Worksheet_SelectionChange(). Thí dụ để kiểm tra việc nhập mã hàng hóa theo yêu cầu của bạn, bạn hãy tiến hành qui trình các bước cụ thể như sau:

- Chạy Excel, mở file Excel chứa bảng tính dữ liệu của bạn.
- nhập danh sách mã hàng hóa hợp lệ vào worksheet, thí dụ từ cell P1 tới cell P20.
- chọn menu Tools.Macro.Visual Basic Editor để mở cửa sổ soạn code VBA.
- trong cửa sổ Project, dời chuột về mục Sheet1 (sheet chứa bảng số liệu), ấn kép chuột vào nó để mở cửa sổ soạn code cho worksheet tương ứng.
- ấn chuột vào ListBox "Object" để hiển thị các đối tượng lập trình hiện có trong worksheet tương ứng, chọn mục Worksheet để tạo hàm Worksheet_SelectionChange() cho worksheet này.
- Soạn code cho hàm Worksheet_SelectionChange() theo yêu cầu kiểm tra của bạn:

'khai báo hằng miêu tả cột đầu và cuối của bảng dữ liệu
Const StartRow = 2
Const EndRow = 33
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Val As String
Dim r As Integer
'kiểm tra nếu cell không phải là cột A thì thôi
If Target.Offset.Column <> 1 Then Exit Sub
r = Target.Offset.Row - 1
'kiểm tra nếu cell không nằm trong phạm vi thì thôi
If (StartRow <= r) And (r <= EndRow) Then
Val = Target.Cells(0, 1).Value
'kiểm tra nội dung cell có hợp lệ không
kq = Application.VLookup(Val, Range("$P$1:$P$20"), 1)
If IsError(kq) Or (kq <> Val) Then MsgBox "Ban da nhap sai ma hang : " & Val
End If
End Sub

Do đối số của hàm Worksheet_SelectionChange() xác định vị trí cell hiện hành chứ không phải là vị trí cell cũ (vừa bị thay đổi nội dung), muốn để hàm trên hoạt động đúng theo yêu cầu thì sau khi nhập mới nội dung 1 cell của cột mã hàng hóa, bạn phải dùng phím Enter hay ¯ để kích hoạt được hàm kiểm tra trên.

Download các phần mềm miễn phí được ưa dùng nhiều nhất

    [ Các bài mới ]
    [ Các bài đã đăng ]
    Download Unikey - PM gõ tiếng Việt phổ biến nhất
    Chương trình nhỏ gọn, free.
    Thủ thuật hay với Gmail
    Tham khảo các tính năng độc đáo có thể bạn chưa biết
     
     
     
    COMPUTER - COMMUNICATION - CONTROL 3C, INC.
    Số 6 - Láng Hạ - Ba Ðình - Hà Nội; Tel: 84.4.38312695; Fax: 84.4.38311925
    Copyright © 2005 3C INC. All rights reserved.