Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Hỏi] Code vba không có tác dụng khi dùng year(now() và hàm right
#1
Chào các bạn, mình có 1 form trên đó có 2 textbox: txt1 và txt2 và 1 cmdbutton.
+ Txt2: có control source =right(txt1,4)
+ Cmdbutton: If me.txt2 < year(now()) then
                        msgbox "abd"
                     End if

Nhưng code ko có tác dụng. Mình không hiểu lí do tại sao. Ai biết có thể vui lòng giúp mình.
Chữ ký của mrsiro Xin chào, mình là mrsiro, Tham gia http://thuthuataccess.com/forum từ ngày 05-12 -14.
Reply
Những người đã cảm ơn
#2
Bạn xem me.txt2 có phải dạng number không (có cắt chuỗi của txt1 mà)
Chữ ký của cpucloi Tôi chỉ biết mỗi một điều là những điều tôi biết được còn quá ít 021


ღღღღღTài sản của cpucloi (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#3
(05-03-18, 10:02 AM)mrsiro Đã viết: Chào các bạn, mình có 1 form trên đó có 2 textbox: txt1 và txt2 và 1 cmdbutton.
+ Txt2: có control source =right(txt1,4)
+ Cmdbutton: If me.txt2 < year(now()) then
                        msgbox "abd"
                     End if

Nhưng code ko có tác dụng. Mình không hiểu lí do tại sao. Ai biết có thể vui lòng giúp mình.

Sửa Cmdbuttonlại như sau
Mã PHP:
If Val(me.txt2) < year(now()) then
     msgbox 
"abd"
End if 


Hàm Val có tác dụng đổi chuỗi thành số. Có như thế mới so sánh với năm được.
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn mrsiro
#4
Cám ơn bạn mình đã giải quyết xong vấn đề, tiện đây mình xin hỏi thêm 1 vấn đế nữa
Mình có 1subform và 1mainform:

+ Subform: Có txt1 với controlsource =count(mahd)
+ Mainform:  - Có txt2 với controlsource = subform.form!txt1
                    - Có txttim: Subform sẽ lọc record theo giá trị của txt này
                    - 1 commandbutton
Mình cấu hình afterupdate của txt2 như sau: If me.txt2 = 0 then
                                                                   me.commanbutton.enabled = false
                                                                Else
                                                                   me.commanbutton.enabled = true
                                                                 End if
=> code này không có tác dụng
Nhưng nếu mình thay code vào event click của command button:
  If me.txt2 = 0 then
    msbgox"abd"
  Else
     thực hiện lệnh tiếp theo
  End if
Thì lại có tác dụng

https://www.dropbox.com/s/lf1g2pm2qkmfk6h/db29.rar?dl=0
Chữ ký của mrsiro Xin chào, mình là mrsiro, Tham gia http://thuthuataccess.com/forum từ ngày 05-12 -14.
Reply
Những người đã cảm ơn
#5
(06-03-18, 09:49 AM)mrsiro Đã viết: Cám ơn bạn mình đã giải quyết xong vấn đề, tiện đây mình xin hỏi thêm 1 vấn đế nữa
Mình có 1subform và 1mainform:

+ Subform: Có txt1 với controlsource =count(mahd)
+ Mainform:  - Có txt2 với controlsource = subform.form!txt1
                    - Có txttim: Subform sẽ lọc record theo giá trị của txt này
                    - 1 commandbutton
Mình cấu hình afterupdate của txt2 như sau: If me.txt2 = 0 then
                                                                   me.commanbutton.enabled = false
                                                                Else
                                                                   me.commanbutton.enabled = true
                                                                 End if
=> code này không có tác dụng
Nhưng nếu mình thay code vào event click của command button:
  If me.txt2 = 0 then
    msbgox"abd"
  Else
     thực hiện lệnh tiếp theo
  End if
Thì lại có tác dụng

https://www.dropbox.com/s/lf1g2pm2qkmfk6h/db29.rar?dl=0

Theo bài bạn thì  sửa lại như sau
Mã PHP:
If IsNull(me.txt2then         ' Nếu txt2 rỗng thì 
  me.commanbutton.enabled = false        ' 
Nút chìm xuuống không nhấn được và ngược lại
Else
 me.commanbutton.enabled true
End 
if 
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#6
Không được bạn ơi, txt2 đang nhận giá trị từ txt1 trên subform, mà txt1 thì có controlsource là count(mahd). Vì thế txt2 chỉ có giá trị hoặc là 0 hoặc là số khác 0.
Mình muốn khi txt2 có giá trị = 0 thì commanbutton enabled = false, còn nếu txt2 có giá trị khác thì cmdbutton enabled = true.
Chữ ký của mrsiro Xin chào, mình là mrsiro, Tham gia http://thuthuataccess.com/forum từ ngày 05-12 -14.
Reply
Những người đã cảm ơn
#7
- Theo bạn nói còn có textbox tìm kiếm. Vậy bạn đưa code đó vô sự kiện AfterUpdate của textbox tìm kiếm này.
- Khi form mở lên (On Open), kiểm tra xem có record nào không, nếu không cũng disabled cái cmdbutton đó luôn.
Tóm lại đưa code vào 2 sự kiện trên.
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#8
(06-03-18, 11:42 PM)ongke0711 Đã viết: - Theo bạn nói còn có textbox tìm kiếm. Vậy bạn đưa code đó vô sự kiện AfterUpdate của textbox tìm kiếm này.
- Khi form mở lên (On Open), kiểm tra xem có record nào không, nếu không cũng disabled cái cmdbutton đó luôn.
Tóm lại đưa code vào 2 sự kiện trên.

Đã đưa vào afterupdate của txttimkiem vẫn không có tác dụng bạn à.
Chữ ký của mrsiro Xin chào, mình là mrsiro, Tham gia http://thuthuataccess.com/forum từ ngày 05-12 -14.
Reply
Những người đã cảm ơn
#9
Trên file demo của bạn có cái textbox [txtmahd] dùng để tìm kiếm đúng không?
- Tôi sẽ code cho cái textbox đó như bên dưới.
- RecordSource của Sub form bạn bỏ cái điều kiện [mahd] = Forms!....

Mã PHP:
Private Sub txtmahd_AfterUpdate()
   
   If Len
(Nz(Me.txtmahd"")) = 0 Then   'Khi xóa nội dung [txtmahd] thì sẽ hiển thị lại toàn bộ record.'
       Me.form1_sub.Form.FilterOn False
       Me
.form1_sub.Requery
   Else
       Me
.form1_sub.Form.Filter "[mahd]='" Me.txtmahd "'"
       Me.form1_sub.Form.FilterOn True
       Me
.form1_sub.Requery
   End 
If
   
   If Me
.Text2 0 Then
       Me
.Command6.Enabled False
   Else
       Me
.Command6.Enabled True
   End 
If

End Sub 
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn maidinhdan


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Không chọn được nhiều Nhân viên từ subform huuduy.duy 10 495 29-09-18, 08:11 PM
Bài mới nhất: ongke0711
  Chia sẻ bộ code quản lý form (tiến - lùi - thêm - xóa ...) tranthanhan1962 13 3,311 24-08-18, 01:32 PM
Bài mới nhất: Cuong Servenet
  [Hỏi] Sử dụng Tab/Enter để di chuyển các Text vucongpda 4 312 13-08-18, 10:08 AM
Bài mới nhất: Cuong Servenet
  FORM NHẬP LIỆU P1: Dùng 1 Form nhập cho nhiều Table (cùng thiết kế Fields) ongke0711 11 892 21-07-18, 05:34 PM
Bài mới nhất: NguyenDungAnh
  Xử lý code chạy chữ mềm mại tranthanhan1962 7 2,728 20-07-18, 09:58 AM
Bài mới nhất: ledungddk001

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ơ| PMA Nha Trang| Gỗ Acrylic Không Đường Line