Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Help] TẠO 1 MACRO VỚI 2 SUB MACRO
#1
Mình có 1 form QUẢN LÍ BÁN HÀNG.Trong FORM, mình có tạo 1 option group với 2 lables tương ứng với 2 value:
-xem hóa đơn của khách hàng: 1
-xem báo cáo bán hàng theo quý: 2
Bên cạnh đó còn có 1 combo box : chọn mã KH; 1 text box : nhập quý; 2 command button: XEM, ĐÓNG FORM.
*YÊU CẦU:
1.Khi chọn mục "xem hóa đơn của khách hàng" thì "combo box MaKH" sáng đồng thời ô "nhập quý" sẽ mờ.
2.Người dùng chọn MaKH trong combo box và click nút XEM thì chương trình sẽ mở REPORT_7 với điều kiện:của những khách hàng có MaKH=MaKH được chọn trong combo box MaKH.
3.Khi chọn mục "xem báo cáo khách hàng theo quý" thì "nhập quý" sáng, combo box mờ.
4.Người dùng nhập quý cần xem và click nút XEM thì chương trình sẽ mở REPORT_8.
5.Nếu không nhập quý mà click nút XEM thì chương trình sẽ đưa ra thông báo yêu cầu nhập quý.

Mình thực sự rất rối với bài tập này vì có nhiều yêu cầu. Mình chỉ học hỏi chút ít từ sách vở và không qua trường lớp đào tạo nên "gà mờ" lắm.016. Mình đã thử làm yêu cầu(2) nhưng nó chỉ có hiệu nghiệm với 1 MaKH đầu tiên và duy nhất. VD mình chọn MaKH là FAHASA thì chương trình vẫn mở REPORT_8 với MaKH tương ứng. Nhưng tới lần thứ 2 mình nhập 1 MaKH khác thì nó vẫn giử nguyên HOADON của FAHASA ban đầu. Mình đã thử rất nhiều lần nhưng chỉ tốn công.030
Các "sư phụ" ơi, làm ơn cứu giúp "đệ tử" với.040
Chữ ký của mydaisy55@gmail.com Xin chào, mình là mydaisy55@gmail.com, Tham gia http://thuthuataccess.com/forum từ ngày 20-03 -13.
Reply
Những người đã cảm ơn
#2
Để ẩn hoặc hiện bạn dùng thuộc tính Visible của đới tượng. cụ thể với bài của bạn như sau:

B1: Bấm phải vào ô "Nhập quý" và ô " Combo Box" chọn thuộc tính Visible đang Yes đổi thành No. (và đặt tên chon 2 cái này la NHAPQUY va CONBOX)
B2: Bấm phải chuột chọn mục "Xem Hóa đơn của khách hàng" phải chuột chọn Buil Evens... chọn Code..... tại vị trí con trỏ bạn thêm đoạn Code sau:
NHAPQUY.Visible = False
CONBOX.Visible = True

B3:Tương tự như vậy với "Xem báo cao khách hàng" như đảo lại cáo trên

Còn cái chỉ xem được 1 hóa đơn đầu bạn nên dùng Requery lại dữ liệu khi ô Mã khách hàng thây đổi.
Muốn hướng dẫn cụ thể hơn cài Teamview rồi liên hệ chữ ký trong giờ Hành chính tớ làm qua mạng cho
Chữ ký của wintq Đang có mấy chương trình đ.ồ á.n tốt nghiệp trước viết cho Sinh viên về: QL nhân sự, Thư viện, QL Báo, QL Bán hàng,......ai có nhu cầu liên hệ: 0904 506 777.
ღღღღღTài sản của wintq (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#3
Cám ơn bạn nhiều nha. Nhưng mình làm không được. không hiểu sao khi chọn mục "xem hoa don cua khach hang" chỉ còn cái combo box còn cái "NHAPQUY" thì biến mất. Mình chỉ nghĩ nó sẽ mờ đi? Chắc là mình đã thao tác sai? Bạn giúp mình nhé!
Chữ ký của mydaisy55@gmail.com Xin chào, mình là mydaisy55@gmail.com, Tham gia http://thuthuataccess.com/forum từ ngày 20-03 -13.
Reply
Những người đã cảm ơn
#4
Ví dụ bài tập của mình chỉ có: 1 option group và 2 COMMAND BUTTON (như bài tập trước đã nêu) mà không có COMBO BOX CHỌN MaKH và NHAPQUY thì mình sẽ sắp xếp các action trong macro như thế nào để nó XEM được 2 yêu cầu trong option group. Còn về chức năng requery gì đó, mình không tìm thấy. Mình cũng không biết sử dụng sao nữa. Bạn chỉ giúp mình nhé! Chỉ có vậy thôi chắc là bài tập sẽ đơn giản hơn nhiều phải không?
Chữ ký của mydaisy55@gmail.com Xin chào, mình là mydaisy55@gmail.com, Tham gia http://thuthuataccess.com/forum từ ngày 20-03 -13.
Reply
Những người đã cảm ơn
#5
Trên form có các control sau đây :
- Một Option Group có name = YeuCau, Default Value =1
- Trong Option Group có hai option
Option thứ nhất : Caption = Xem theo khách hàng, Option Value = 1
Option thứ hai : Caption = Xem theo quý, Option Value = 2
- Một combobox : Name = cboKH, RowSource = tblKhachHang...
- Mốt textbox : Name = txtQuy
Trong code của form, chép các đoạn code sau vào

1/ Để Enable control :
Mã:
Private Sub Form_Activate()
    If Me.YeuCau.Value = 1 Then
        Me.cboKH.Enabled = True
        Me.txtQuy.Enabled = False
    Else
        Me.cboKH.Enabled = False
        Me.txtQuy.Enabled = True
    End If
End Sub

Private Sub YeuCau_Click()
    If Me.YeuCau.Value = 1 Then
        Me.cboKH.Enabled = True
        Me.txtQuy.Enabled = False
    Else
        Me.cboKH.Enabled = False
        Me.txtQuy.Enabled = True
    End If
End Sub

2/ Để mở report
Mã:
Private Sub Xem_Click()
    If Me.YeuCau.Value = 1 Then 'khi chon xem theo khach hang
        'Mo report7 khi chọn mã khách thông qua hộp combo
        'khi không chọn mã khách thì ra thông báo
        If Me.cboKH = "" Then
            MsgBox "Ban chua chon khach hang" , , "Thong Bao"
            cboKH.SetForcus
            Exit Sub
        Else ' khi chon ma khach thi mo report7 va tim ma khach tuong ung voi hop combo cboKH
            DoCmd.OpenReport "report7", acViewPreview, , "[MaKH] = Forms!frmBaoCao!cboKH"
        End If
    Else 'khi chon xem theo quy
        'Neu txtQuy < 1 hoac txtQuy > 4 thi ra thong bao
        If Me.txtQuy < 1 Or Me.txtQuy > 4 Then
            MsgBox "Quy chi nam trong khoang tu 1 den 4" , "Thong Bao"
            txtQuy.SetForcus
            Exit Sub
        Else
            DoCmd.OpenReport "report8", acViewPreview
    End If
End Sub

Thân mến
Chữ ký của Xuân Thanh Trăm năm trước thì ta chưa gặp
Trăm năm sau biết gặp được không?
Cuộc đời sắc sắc không không
Thì thôi ta cứ hết lòng vì nhau
ღღღღღTài sản của Xuân Thanh (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#6
Cám ơn bạn nhiều nha. Bạn ơi, phần code này mình chưa học tới. Hình như nó nằm trong phần event procedure và liên quan đến MODULE mà mình thì mới dừng lại ở phần MACRO thôi. Mình tham khảo 1 số đề thi trước của trường, phần MODULE đó sẽ không ra trong phần thi tin B nên mình chỉ tập trung vào MACRO thôi. Không biết các đoạn lệnh này có thể áp dụng vào các action trong MACRO hiệu quả không? Nhưng mà hồi trước mình có tham khảo 1 số videoclip liên quan đến EVENT PROCEDURE, lệnh DOCMD và mình đã bắt chước áp dụng nó vào MACRO thì thấy cũng đúng. Ý kiến bạn như thế nào?
Chữ ký của mydaisy55@gmail.com Xin chào, mình là mydaisy55@gmail.com, Tham gia http://thuthuataccess.com/forum từ ngày 20-03 -13.
Reply
Những người đã cảm ơn
#7
(08-04-13, 05:17 PM)mydaisy55@gmail.com Đã viết: Cám ơn bạn nhiều nha. Bạn ơi, phần code này mình chưa học tới. Hình như nó nằm trong phần event procedure và liên quan đến MODULE mà mình thì mới dừng lại ở phần MACRO thôi. Mình tham khảo 1 số đề thi trước của trường, phần MODULE đó sẽ không ra trong phần thi tin B nên mình chỉ tập trung vào MACRO thôi. Không biết các đoạn lệnh này có thể áp dụng vào các action trong MACRO hiệu quả không? Nhưng mà hồi trước mình có tham khảo 1 số videoclip liên quan đến EVENT PROCEDURE, lệnh DOCMD và mình đã bắt chước áp dụng nó vào MACRO thì thấy cũng đúng. Ý kiến bạn như thế nào?

Gửi ban file này. Bạn mở xem cách thiết kế các macro AnHien, MoReport và các gán các macro vào Form_Activate(), YeuCau_Click() và Xem_Click(). Chu ý các value của option group YeuCau và các option con

Thân mến


File đính kèm
.zip   db1.zip (Kích cỡ: 11.47 KB / Tải về: 29)
Chữ ký của Xuân Thanh Trăm năm trước thì ta chưa gặp
Trăm năm sau biết gặp được không?
Cuộc đời sắc sắc không không
Thì thôi ta cứ hết lòng vì nhau
ღღღღღTài sản của Xuân Thanh (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#8
(08-04-13, 05:17 PM)mydaisy55@gmail.com Đã viết: Cám ơn bạn nhiều nha. Bạn ơi, phần code này mình chưa học tới. Hình như nó nằm trong phần event procedure và liên quan đến MODULE mà mình thì mới dừng lại ở phần MACRO thôi. Mình tham khảo 1 số đề thi trước của trường, phần MODULE đó sẽ không ra trong phần thi tin B nên mình chỉ tập trung vào MACRO thôi. Không biết các đoạn lệnh này có thể áp dụng vào các action trong MACRO hiệu quả không? Nhưng mà hồi trước mình có tham khảo 1 số videoclip liên quan đến EVENT PROCEDURE, lệnh DOCMD và mình đã bắt chước áp dụng nó vào MACRO thì thấy cũng đúng. Ý kiến bạn như thế nào?
Tốt nhất cài Teamview rồi làm trực tiếp trên đó nhanh hơn.
Chữ ký của wintq Đang có mấy chương trình đ.ồ á.n tốt nghiệp trước viết cho Sinh viên về: QL nhân sự, Thư viện, QL Báo, QL Bán hàng,......ai có nhu cầu liên hệ: 0904 506 777.
ღღღღღTài sản của wintq (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#9
Cám ơn bạn nhiều nha. Mình đã bắt chước nhưng kiếm không ra phần SetValue ( cho các option ) trong Action Catalog. Mình kiếm mà chỉ thấy setproperty,setmenuitem,... Có phải mình đã làm sai nên mới không thấy SetValue? Bạn có thể giảng cho mình thêm không? Mình chân thành cám ơn.
Chữ ký của mydaisy55@gmail.com Xin chào, mình là mydaisy55@gmail.com, Tham gia http://thuthuataccess.com/forum từ ngày 20-03 -13.
Reply
Những người đã cảm ơn


Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ