VicoTas
Câu hỏi
Đức Cảnh duccanh
28/05/2013 07:43

Hỏi về bảng tính Excel?

Có 2 bảng tính Excel gồm:
- Bảng 1 có các trường Masanpham, tensanpham, toncuoi nằm trên sheet1 (A1:C1000).
- Bảng 2 có các trường Masanpham, tensanpham, soluongban trên sheet2 (A1:C2).
Tôi muốn khi nhập các thông tin trên các ô thuộc sheet2 (A2; B2;C2) và chạy 1 macro thì chương trình sẽ tìm kiếm đúng mã sản phẩm trên bảng 1 và trừ đi lượng hàng bán ra.

Danh sách câu trả lời (1)
Hoài Nam (Nam Tước) namtuoc 28/05/2013 07:43
Nếu bạn biết lập trình bằng ngôn ngữ VBA và biết dùng đối tượng "Range" để truy xuất các cell trong các worksheet Excel thì việc viết macro thực hiện yêu cầu riêng của bạn là không khó. Sau đây tôi xin trình bày qui trình điển hình để giải quyết bài toán của bạn:

1. Chạy Excel, mở file Excel chứa 2 worksheet của bạn. Chọn menu Tool.Macro.Macros để hiển thị cửa sổ Macro, nhập tên macro mới (thí dụ là Update), chọn tên file Excel của bạn trong danh sách "Macros in", chọn button Create để tạo mới macro này trong file Excel của bạn.
2. Viết code VBA cho thủ tục Update như sau:
Sub Update()
'Khai báo các biến cần dùng
Dim Rgn1 As Range
Dim Rgn2 As Range
Dim i As Integer, j As Integer
'khởi động các vùng cell cần xử lý
Set Rgn1 = Range("Sheet1!A1:C1000")
Set Rgn2 = Range("Sheet2!A2:C2")
'duyệt xử lý từng hàng dữ liệu trong Rgn1
For i = 1 To Rgn1.Rows.count
If (Rgn1.Item(i, 1) = Rgn2.Item(1, 1)) And (Rgn1.Item(i, 2) = Rgn2.Item(1, 2)) Then
'tìm được phần tử ở hàng i cần hiệu chỉnh
Rgn1.Item(i, 3) = Rgn1.Item(i, 3) - Rgn2.Item(1, 3)
End If
Next i
End Sub
3. Chọn menu File.Close and Return to Microsoft Excel.
4. Tạo icon toolbar mới và gán icon này với macro đã viết: chọn menu View.Toolbars.Customize. Duyệt tìm và chọn mục Macros trong listbox "Categories", chọn mục "Custom Button" và "drag" nó về vị trí mong muốn trong 1 toolbar nào đó hiện có. Sau khi đã có icon trong toolbar mong muốn, chọn nó rồi nhấn chuột vào listbox "Modify Selection" trong cửa sổ Customize, chọn mục "Assign macro" để hiển thị cửa sổ "Assign macro", chọn macro "Update" trong danh sách rồi chọn OK để hoàn thành tác vụ.
5. Bây giờ bạn hãy thử nhập các thông tin trên các ô thuộc sheet2 (A2; B2; C2) rồi chọn icon miêu tả macro vừa tạo trong Toolbar, thủ tục Update sẽ chạy, tìm kiếm đúng mã sản phẩm trên sheet1 và trừ đi lượng hàng bán ra.
Trả lời câu hỏi
Tải lại mã
Câu hỏi lĩnh vực Câu hỏi khác
nophoto Cách tách họ tên trong Microsoft Excel?

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

nophoto Máy tính không hiển thị được hình được dán (paste) trong e-mail?

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

nophoto Có cách nào để thiết lập hàm tự động tìm thông số "lookup_value"?

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

nophoto Boot qua cổng USB

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

nophoto Cho em biết vài từ điển trực tuyến để học tiếng Anh được không?

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

nophoto Có phải IE7 nạp các trang web chậm hơn đáng kể so với IE6 hay Firefox?

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

nophoto Cách tìm lại lệnh "Run" ở Start Menu trong Windows XP?

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

Đức Vân Chất lượng và bảo hành của laptop lenovo Y410-43A

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

MrTien Xin chỉ cho mình cách gửi một bản Fax từ máy tính cài Windows?

Đăng lúc: 07:43 - 28/05/2013 trong Câu hỏi khác

nophoto Tạo ổ đĩa ảo bằng Virtual Driver Manager

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto Thao tác trong word

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto Cách diệt vi rút ok.exe

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

Mạnh Linh Tạm dừng in khi vừa mới bắt đầu in?

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto Có cách nào tự logout khi đóng trình duyệt?

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto USB bị lỗi?

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto Hỏi về con chip đo nhiệt độ các thành phần trong máy tính?

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto Laptop tại sao mắc hơn nhiều so với desktop?

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto Windows XP bị lỗi font

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

nophoto Tháo gỡ site mặc định trên IE

Đăng lúc: 21:20 - 23/06/2013 trong Câu hỏi khác

nophoto Muốn đặt webcam cách máy tính khoảng 30m, có được không?

Đăng lúc: 07:42 - 28/05/2013 trong Câu hỏi khác

Rao vặt Siêu Vip