Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Help] Code VBA tìm kiếm cho Form
04-10-13, 09:53 AM
Bài viết: #1
Code VBA tìm kiếm cho Form
database của mình gồm có 2 bảng:
Sample (STT, NAME , IDSOURCE, DETAIL)
Source (IDSOURCE , NAME, INFORMATION )
Mình có tạo 2 form
FrmSample và FrmSource.
Trên FrmSample có một ComboxSource ( lấy nguồn từ bãng Source). Ý mình ở đầy là khi người ta bấn nút Save trên FrmSample thì nó sẽ kiểm tra giá trị ở ComboxSource có trong bãng Source chưa ( vì đôi khi người khác hong chọn mà họ gõ một giá trị nào đó ). Nếu chưa có giá trị thì nó mở FrmSource lên để nhập giá trị đó vào bãng Source trước, còn nếu có rồi thì cho ghi vô bãng table.
Mình không biết viết Code ở chổ làm sao chể check giá trị của ComboxSource đã có ở bãng Source hay chưa, bạn nào giúp mình với

Chữ Ký của lethuongtonXin chào, mình là lethuongton, Tham gia http://thuthuataccess.com/forum từ ngày 22-03 -13.
Trả lời
04-10-13, 11:40 PM
Bài viết: #2
RE: Code VBA tìm kiếm cho Form
Bạn cần 1 combo, tại sự kiện NotIntheList bạn tham chiếu đến một thủ tục khác để bật ra form nhập liệu (dạng như ở đây)
Mã PHP:
Private Sub ExternalResponsiblity_NotInList(NewData As StringResponse As Integer)
     
Gọi thủ tục mở form
    NotIntheList ExternalResponsiblity
"ExternalResponsiblity"2Response
End Sub 
Mã PHP:
Private Sub NotIntheList(iObj As ComboBoxiActName As StringiParam As LongtResponse As long)
     
Gọi form để cập nhập
    objOutList 
True
    MsgBox 
"Khong co trong danh muc"vbCritical
    DoCmd
.OpenForm "FormName"acNormal, , , , acDialog
    tResponse 
0
    iObj 
""
    
iObj.Requery
    objOutList 
False
End Sub 
Tôi chỉ cung cấp dạng ví dụ, bạn có thể sửa thêm cho đúng

Chữ Ký của paulsteigel====================
Cái chai không đầu
Mà sao có cổ
====================
A fan of Alice Cooper!
Trả lời
 Những người đã cảm ơn MatTroiNguQuen , lethuongton
05-10-13, 12:32 AM (Được chỉnh sửa: 05-10-13 12:33 AM bởi MatTroiNguQuen.)
Bài viết: #3
RE: Code VBA tìm kiếm cho Form
Bác paulsteigel đúng là "Thành Viên đẳng cấp". Mình thích đọc các câu trả lời của bác (học hỏi dc nhiều kinh nghiệm )015

Chữ Ký của MatTroiNguQuenThời gian nước chảy... da mòn
Ngủ quên một chốc thấy còn bộ xương!
Trả lời
05-10-13, 03:52 PM (Được chỉnh sửa: 05-10-13 03:54 PM bởi lethuongton.)
Bài viết: #4
RE: Code VBA tìm kiếm cho Form
(04-10-13 11:40 PM)paulsteigel Đã viết:  Bạn cần 1 combo, tại sự kiện NotIntheList bạn tham chiếu đến một thủ tục khác để bật ra form nhập liệu (dạng như ở đây)
Mã PHP:
Private Sub ExternalResponsiblity_NotInList(NewData As StringResponse As Integer)
     
Gọi thủ tục mở form
    NotIntheList ExternalResponsiblity
"ExternalResponsiblity"2Response
End Sub 
Mã PHP:
Private Sub NotIntheList(iObj As ComboBoxiActName As StringiParam As LongtResponse As long)
     
Gọi form để cập nhập
    objOutList 
True
    MsgBox 
"Khong co trong danh muc"vbCritical
    DoCmd
.OpenForm "FormName"acNormal, , , , acDialog
    tResponse 
0
    iObj 
""
    
iObj.Requery
    objOutList 
False
End Sub 
Tôi chỉ cung cấp dạng ví dụ, bạn có thể sửa thêm cho đúng
Thanks bạn nhiều nha.
Mình đã làm được rồi.
Mình có tìm được một link tham khảo ở đây:
Support Microsoft
Tuy nhiên, mình cũng chưa hiểu về sao lại có đoạn:

Mã PHP:
Private Sub Form_Load () 
If 
Not IsNull(Me.OpenArgsThen
      
' If form's OpenArgs property has a valueassign the contents
      
' of OpenArgs to the CompanyName field. OpenArgs will contain
      ' 
a company name if this form is opened using the OpenForm
      
' method with an OpenArgs argument, as done in the Orders
      ' 
forms CustomerID_NotInList event procedure.
      
Me![CompanyName] = Me.OpenArgs
   End 
If
End Sub 
Mình vẫn chưa hiểu về lệnh Me.OpenArgs lắm ( do mới tìm hiểu thời gian gần đây ). Nếu bạn biết thì giải thích giúp mình nha. [/php]

Chữ Ký của lethuongtonXin chào, mình là lethuongton, Tham gia http://thuthuataccess.com/forum từ ngày 22-03 -13.
Trả lời
05-10-13, 05:44 PM
Bài viết: #5
RE: Code VBA tìm kiếm cho Form
(05-10-13 03:52 PM)lethuongton Đã viết:  Mình vẫn chưa hiểu về lệnh Me.OpenArgs lắm ( do mới tìm hiểu thời gian gần đây ). Nếu bạn biết thì giải thích giúp mình nha. [/php]

Me.OpenArgs được sử dụng để truyền tham số cho một form. Trong quá trình làm việc, người ta cần một form thực hiện thao tác nào đó trong lúc tải vào bộ nhớ và các thao tác này có thể khác nhau. Để làm điều này, người ta có 2 cách:
1. Định nghĩa một biến toàn cục và khi form tải lên thì đọc biến đó để biết là phải làm gì ví dụ tải lên 1 bản ghi, tạo bản ghi mới, thay đổi tiêu đề form ...vv
Cách này không an toàn và thường chỉ ứng dụng khi phải có một nhóm các tham số phức tạp.

2. Truyền qua câu lệnh gọi form
docmd.OpenForm "Tên form",acNormal,,,,acDialog,"Tham_so"

Với dạng này, ta có thể lấy tham số từ việc đọc thuộc tính Me.OpenArgs lúc tải form để: lấy thông tin bản ghi, thiết lập bộ lọc ....vv mà không cần phải có biến nào cả.
Trong câu hỏi của bạn thì Textbox Tên công ty sẽ được truyền vào giá trị tham số của lệnh gọi form trước đó.
Me![CompanyName] = Me.OpenArgs
Xin có vài dòng chia sẻ như vậy!

Chữ Ký của paulsteigel====================
Cái chai không đầu
Mà sao có cổ
====================
A fan of Alice Cooper!
Trả lời
 Những người đã cảm ơn lethuongton
05-10-13, 05:47 PM
Bài viết: #6
RE: Code VBA tìm kiếm cho Form
Thanks bạn nhiều

Chữ Ký của lethuongtonXin chào, mình là lethuongton, Tham gia http://thuthuataccess.com/forum từ ngày 22-03 -13.
Trả lời


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
Shocked [Hỏi] Tạo forms tìm kiếm nhiều đối tượng với nhiều điều kiện khác nhau ? dinh_trong_hoa 60 5,049 Hôm qua 08:26 PM
Bài mới nhất: dinh_trong_hoa
  [Hỏi] Tìm kiếm bằng textbox ? papito 2 77 23-04-14 05:29 PM
Bài mới nhất: changkhoonline77
  [Hỏi] cách chạy form ngoài Desktop papito 11 362 22-04-14 11:05 AM
Bài mới nhất: papito
  [Giúp đỡ] Cách xóa module khi viết code bị sai xachxo_vacxi 2 99 19-04-14 08:15 PM
Bài mới nhất: xachxo_vacxi
  [Help] tạo form đăng nhập maianhbao92939495 3 121 18-04-14 11:06 AM
Bài mới nhất: Xuân Thanh

Chuyển nhanh:


Thành viên đang đọc chủ đề: 1 Khách

Liên hệ | Thủ Thuật Access | Lên trên | Nội dung | Bản rút gọn | Tin RSS