Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Hàm] Thư viện hàm cần biết cho người mới học
#21
99-Đóng Form này về Form khác cho hiện nút chức năng rõ
+Hàm này ở nhãn Event mục On Click chọn Code Builder bấm OK
DoCmd.Close acForm, "Form_Bo_Sung", acSaveNo
DoCmd.OpenForm "Form_Chon"
Forms!Form_Chon.N3.Enabled = True
DoCmd.Maximize
Ý nghĩa: Hàm này đóng Form_Bo_Sung
               Sau đó mở Form_Chon
   
           Làm hiện nút N3
 
100-Hàm hiện thứ trên Form ở hộp TextBox
+Vẽ 1 hộp TextBox trên Form và nhập
=IIf(Weekday(Now())=1,"CN",IIf(Weekday(Now())=2,"Hai",IIf(Weekday(Now())=3,"Ba",IIf(Weekday(Now())=4,"Tư",IIf(Weekday(Now())=5,"Năm",IIf(Weekday(Now())=6,"Sáu",IIf(Weekday(Now())=7,"Bảy")))))))
 
 
101-Hàm hiện ngày hiện tại trên Form ở hộp TextBox
+Vẽ 1 hộp TextBox trên Form và nhập =Date()
 
 
102-Hàm hiện Giờ hiện tại trên Form ở hộp TextBox
+Vẽ 1 hộp TextBox trên Form và nhập =Time()
 
 
103-Hàm đếm số hồ sơ đã nhập trên Form
+Hàm này sẽ đếm số hồ sơ đã nhập ở trường Mahoso của Bang_Ho_So
+Vẽ 1 hộp Text Box và nhập
=DCount("Mahoso","Bang_ho_so")
Chữ ký của truongtrungviet truongtrungviet,gia nhập Thủ Thuật Access từ 14-12 -15.
Reply
Những người đã cảm ơn
#22
108-Tham số luôn nhảy tới ngày nhập cuối cúng
+Nháy chuột phải vào SubForm chứa trường dữ liệu ngày tháng năm chọn Properties, chọn nhãn Event tại mục On Loard chọn Code Builder bấm OK
+Nhập đoạn mã dưới đây vào
Private Sub Form_Load()
    DoCmd.GoToRecord , , acNewRec
End Sub


112-Hạn chế nhập khi chọn Combo Box trên Form
+Nháy chuột phải vào hộp Combo Box chọn Properties
+Nháy vào nhãn Event
+Chọn mục On Click
+Chọn Code Builder
+Nhập dòng lệnh
Private Sub Combo55_Click()
Dim total As Integer
 
total = CInt(Me.Text48.Value)
 
If total >= 20 Then
    MsgBox "Ban da het so luong cho phep. Hay dang ky voi tac gia de su dung them", vbOKOnly, "Thong bao!"
    DoCmd.Close
    DoCmd.OpenForm "Form_Chon"
    DoCmd.Maximize
Else
'    DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70
    DoCmd.GoToRecord , , acNext
'    DoCmd.GoToRecord , , acNewRec
Exit_Combo55_Click:
End If
    Exit Sub
 
Err_Combo55_Click:
    MsgBox Err.Description
    Resume Exit_Combo55_Click
   
End Sub
Chú ý: Hộp Text48 là nơi đếm số tài sản đã nhập của 1 phòng nếu lớn hơn 20 sẽ hiện ra cảnh báo, Hộp Combo Box này có tên là Combo55
Chữ ký của truongtrungviet truongtrungviet,gia nhập Thủ Thuật Access từ 14-12 -15.
Reply
Những người đã cảm ơn
#23
118-Đếm số dấu + trong 1 trường dữ liệu trên Form
Bạn có 4 hộp Text chứa các dấu + hoặc trừ để tính điểm
+Vẽ 1 hộp Text và nhập
=IIf([Chiso3]="+",1,0)+IIf([Chiso7]="+",1,0)+IIf([Chiso29]="+",1,0)+IIf([Chiso33]="+",1,0)
 
 
119-Hàm nhận mã vạch từ đầu quét qua thẻ trên Form
Bạn cần có 2 đoạn mã
1-Hàm chuyển mã SV từ đầu quét
+Vẽ một hộp Text Box để chứa mã vạch khi quyets từ đầu đọc thẻ
+Nháy chuột phải vào hộp Text chứa có tên là Text83 chẳng hạn chọn Properties
+Chọn nhãn Even
+Tại Mục Change chọn Code Builder và gán đoạn mã dưới đây:
Private Sub Text83_Change()
If IsNull(Trim(Me.Text83.Text)) Then
'MsgBox "Ma khong duoc trung"
Exit Sub
End If
Dim rs As Object
 
‘ Load lai thong tin hoc vien
    Set rs = Me.Recordset.Clone
    rs.FindFirst "[MaSV] = '" & Me.Text83.Text & "'"
    If Not rs.EOF Then Me.Bookmark = rs.Bookmark
CPath = Application.CurrentProject.Path
Dim cPathTapTinAnh As String, cTapTinAnh As String
cPathTapTinAnh = CPath & "\Anh\" & Me.Text83.Text & ".JPG"
 
‘ Load lai anh hoc vien
If FileExists(cPathTapTinAnh) = False Then
Exit Sub
End If
    Me.Image10.Picture = cPathTapTinAnh
    Me.Image10.Visible = True
 
End Sub
 
2-Kiểm tra tồn tại File định mở xem tồn tại hay không
Function FileExists(ByVal strFile As String, Optional bFindFolders As Boolean) As Boolean
    'Purpose:   Return True if the file exists, even if it is hidden.
    'Arguments: strFile: File name to look for. Current directory searched if no path included.
    '           bFindFolders. If strFile is a folder, FileExists() returns False unless this argument is True.
    'Note:      Does not look inside subdirectories for the file.
    'Author:    Allen Browne. http://allenbrowne.com June, 2006.
    Dim lngAttributes As Long
 
    'Include read-only files, hidden files, system files.
    lngAttributes = (vbReadOnly Or vbHidden Or vbSystem)
 
    If bFindFolders Then
        lngAttributes = (lngAttributes Or vbDirectory) 'Include folders as well.
    Else
        'Strip any trailing slash, so Dir does not look inside the folder.
        Do While Right$(strFile, 1) = "\"
            strFile = Left$(strFile, Len(strFile) - 1)
        Loop
    End If
 
    'If Dir() returns something, the file exists.
    On Error Resume Next
    FileExists = (Len(Dir(strFile, lngAttributes)) > 0)
End Function
 
Function FolderExists(strPath As String) As Boolean
    On Error Resume Next
    FolderExists = ((GetAttr(strPath) And vbDirectory) = vbDirectory)
End Function
 
Function TrailingSlash(varIn As Variant) As String
    If Len(varIn) > 0 Then
        If Right(varIn, 1) = "\" Then
            TrailingSlash = varIn
        Else
            TrailingSlash = varIn & "\"
        End If
    End If
End Function
Chữ ký của truongtrungviet truongtrungviet,gia nhập Thủ Thuật Access từ 14-12 -15.
Reply
Những người đã cảm ơn
#24
121-Hàm để mở Report
stDocName = "R_Day_Dong_Ngac"
 DoCmd.OpenReport stDocName, acPreview
 
 
122-Hàm để lấy ra tên người khi nhập vào ô Text trên Form
Hàm này viết trong Query để lấy ra tên người khi nhập vào Text22 trên Form
Like "*" & " " & [Forms]![Form_Chon]![Text2]
 
123-Xếp loại bằng cách đếm số dấu + để tính điểm bé ngoan
Điều kiện số dấu + phải >=3 trở lên
=IIf([Text28]>=3,"Bé ngoan","")
 
124-Đến số cháu bé ngoan ở cuối Report
+Mở Report ở chế độ Design
+Kéo Report Footer và vẽ 1 hộp Text
=Sum(IIf([Bengoan]="Bé ngoan",1,0))
Chữ ký của truongtrungviet truongtrungviet,gia nhập Thủ Thuật Access từ 14-12 -15.
Reply
Những người đã cảm ơn
#25
134-Hàm tính lên lương
Điều kiện như sau:
+Trình độ Trung cấp thì 2 năm lên lương
+Trình độ Cao đẳng trở lên thì 3 năm lên lương
+Vượt khung mỗi năm lên 1 %
+Kỷ luật kéo dài 12 tháng mới lên lương
+Nếu có thành tích thì lên lương sớm có 3 mức: 6,9,12 tháng
Chú ý: Vượt khung thì không được lên lương trước thời hạn
Hàm lấy ra số năm lên lương theo trình độ và học vị hàm này ở 1 ô của Form
=IIf([Trinhdo]<3,2,IIf([Trinhdo]<8,3,1))
+Thêm 1 cột trong Query và gán đoạn mã dưới đây vào
Dukienlansau: DateSerial(Year(Bang_Nang_Luong!Thoigianhuong)+IIf(Bang_Nang_Luong!Trinhdo<3,2,IIf(Bang_Nang_Luong!Trinhdo<8,3,1))+IIf(Bang_Nang_Luong!Kiluat<>0,1,0),Month(Bang_Nang_Luong!Thoigianhuong),Day(Bang_Nang_Luong!Thoigianhuong))-Bang_Nang_Luong!Nangsom*30
 
135-Hàm tính số ngày thi hành án
Hàm này trong Query
1-Số năm thi hành án
SonamN: Int(([AnPhat]+[ThuThach])/12)
 
2-Số tháng thi hành án
SonamD: (([AnPhat]+[ThuThach]) Mod 12)
 
3-Thời hạn thi hành án
ThoiHan: DateSerial((Year([ngaythihanh])+[SonamN]),([sonamd]+Month([ngaythihanh])),Day([ngaythihanh]))
 
4-Cảnh báo thi hành án
CanhBao: IIf(Date()>=[Thoihan],"Đã hết hạn","Còn phải thi hành")
 




137-Lấy ra Trung bình môn các môn học
Trong 1 lớp có nhiều nhóm học các môn khác nhau vậy làm thế nào để trong Report tính được trung bình của môn học cho từng đối tượng, người học 5 môn, người học 4 môn, người học 3 môn, người học 2 môn, người học 1 môn
Đây là trường hợp làm bảng điểm cho các lớp Bồi dưỡng ngắn hạn
+Trên Form bạn vẽ hộp Text Box và nhập
=(IIf([diemvb]<>"",[diemvb],0)+IIf([diemvt]<>"",[diemvt],0)+IIf([diemlt]<>"",[diemlt],0)+IIf([diemtv]<>"",[diemtv],0)+IIf([diemkt]<>"",[diemkt],0)+IIf([diemtq]<>"",[diemtq],0))/[Txt_Somon]
 
Cần phải có 1 hộp Text chứa số môn
=IIf([diemvb]<>"",1,0)+IIf([diemvt]<>"",1,0)+IIf([diemlt]<>"",1,0)+IIf([diemtv]<>"",1,0)+IIf([diemkt]<>"",1,0)+IIf([diemtq]<>"",1,0)
Chú ý: Text này có tên là Txt_Somon
 
 
138-Hàm xếp loại tốt nghiệp từ 1 ô khác là Text64
Hàm xếp loại tốt nghiệp là tiếng Việt
=IIf([Text64]>=9,"Xuất sắc",IIf([Text64]>=8,"giỏi",IIf([Text64]>=7,"Khá",IIf([Text64]>=6,"Trung bình khá",IIf([Text64]>=5,"Trung bình")))))
 
Hàm lấy theo các tiêu chí khác nhau
=Sum(IIf([Phong]="Tổ bảo vệ",1,0))
=Sum(IIf([Chucvu]="Trưởng phòng",1,0))
=Sum(IIf([Chucvu]="Phó khoa",1,0))
=Sum(IIf([Gioitinh]="Nữ",1,0))
=Sum(IIf([Gioitinh]="Nam",1,0))
=Count([Hoten])
=Sum(IIf([Phong]="Tổ bảo vệ",1,0))
=Sum(IIf([Phong]="Tổ bảo vệ" And [Vanhoa]="10/10",1,0))
=Sum(IIf([Phong]="P. TCCB",1,0))
=Sum(IIf([Phong]="P. TCCB" And [Hocvi]="ĐH",1,0))
=Sum(IIf([Hocvi]="03",1,0))
=Sum(IIf([Gioitinh]="01",1,0))
=Sum(IIf([Gioitinh]="02",1,0)) 



144-Hàm tính số năm bộ đội
Hàm để tính số năm đi bộ đội
=IIf([Nhapngu]<>0,Int(([Raquanngay]-[Nhapngu])/365),0)
Hàm để tính số tháng đi bộ đội
=IIf([Nhapngu]<>0,Int((([Raquanngay]-[Nhapngu])-365)/30),0) Mod 12
 
145-Hàm tính số năm làm giáo viên
Lần 1 làm giáo viên
Hàm tính năm =IIf([GVL1Tu]<>0,Int(([GVL1Den]-[GVL1Tu])/365),0)
Hàm tính tháng =IIf([GVL1Tu]<>0,Int((([GVL1Den]-[GVL1Tu])-365)/30),0) Mod 12
 
Lần 2 làm giáo viên
Hàm tính năm =IIf([GVL2Tu]<>0,Int(([GVL2Den]-[GVL2Tu])/365),0)
Hàm tính tháng =IIf([GVL2Tu]<>0,Int((([GVL2Den]-[GVL2Tu])-365)/30),0) Mod 12
 
Lần 3 làm giáo viên
Hàm tính năm =IIf([GVL3Tu]<>0,Int(([GVL3Den]-[GVL3Tu])/365),0)
Hàm tính tháng =IIf([GVL3Tu]<>0,Int((([GVL3Den]-[GVL3Tu])-365)/30),0) Mod 12
 
Tổng 3 lần làm giáo viên
Hàm tính năm =Int(([Sothang1]+[Sothang2]+[Sothang3])/12)+[Sonam1]+[Sonam2]+[Sonam3]
Hàm tính tháng  =([Sothang1]+[Sothang2]+[Sothang3]) Mod 12
Chữ ký của truongtrungviet truongtrungviet,gia nhập Thủ Thuật Access từ 14-12 -15.
Reply
Những người đã cảm ơn caytregiavn77
#26
(13-06-16, 11:51 AM)truongtrungviet Đã viết: 134-Hàm tính lên lương
Điều kiện như sau:
+Trình độ Trung cấp thì 2 năm lên lương
+Trình độ Cao đẳng trở lên thì 3 năm lên lương
+Vượt khung mỗi năm lên 1 %
+Kỷ luật kéo dài 12 tháng mới lên lương
+Nếu có thành tích thì lên lương sớm có 3 mức: 6,9,12 tháng
Chú ý: Vượt khung thì không được lên lương trước thời hạn
Hàm lấy ra số năm lên lương theo trình độ và học vị hàm này ở 1 ô của Form
=IIf([Trinhdo]<3,2,IIf([Trinhdo]<8,3,1))
+Thêm 1 cột trong Query và gán đoạn mã dưới đây vào
Dukienlansau: DateSerial(Year(Bang_Nang_Luong!Thoigianhuong)+IIf(Bang_Nang_Luong!Trinhdo<3,2,IIf(Bang_Nang_Luong!Trinhdo<8,3,1))+IIf(Bang_Nang_Luong!Kiluat<>0,1,0),Month(Bang_Nang_Luong!Thoigianhuong),Day(Bang_Nang_Luong!Thoigianhuong))-Bang_Nang_Luong!Nangsom*30
 
135-Hàm tính số ngày thi hành án
Hàm này trong Query
1-Số năm thi hành án
SonamN: Int(([AnPhat]+[ThuThach])/12)
 
2-Số tháng thi hành án
SonamD: (([AnPhat]+[ThuThach]) Mod 12)
 
3-Thời hạn thi hành án
ThoiHan: DateSerial((Year([ngaythihanh])+[SonamN]),([sonamd]+Month([ngaythihanh])),Day([ngaythihanh]))
 
4-Cảnh báo thi hành án
CanhBao: IIf(Date()>=[Thoihan],"Đã hết hạn","Còn phải thi hành")
 




137-Lấy ra Trung bình môn các môn học
Trong 1 lớp có nhiều nhóm học các môn khác nhau vậy làm thế nào để trong Report tính được trung bình của môn học cho từng đối tượng, người học 5 môn, người học 4 môn, người học 3 môn, người học 2 môn, người học 1 môn
Đây là trường hợp làm bảng điểm cho các lớp Bồi dưỡng ngắn hạn
+Trên Form bạn vẽ hộp Text Box và nhập
=(IIf([diemvb]<>"",[diemvb],0)+IIf([diemvt]<>"",[diemvt],0)+IIf([diemlt]<>"",[diemlt],0)+IIf([diemtv]<>"",[diemtv],0)+IIf([diemkt]<>"",[diemkt],0)+IIf([diemtq]<>"",[diemtq],0))/[Txt_Somon]
 
Cần phải có 1 hộp Text chứa số môn
=IIf([diemvb]<>"",1,0)+IIf([diemvt]<>"",1,0)+IIf([diemlt]<>"",1,0)+IIf([diemtv]<>"",1,0)+IIf([diemkt]<>"",1,0)+IIf([diemtq]<>"",1,0)
Chú ý: Text này có tên là Txt_Somon
 
 
138-Hàm xếp loại tốt nghiệp từ 1 ô khác là Text64
Hàm xếp loại tốt nghiệp là tiếng Việt
=IIf([Text64]>=9,"Xuất sắc",IIf([Text64]>=8,"giỏi",IIf([Text64]>=7,"Khá",IIf([Text64]>=6,"Trung bình khá",IIf([Text64]>=5,"Trung bình")))))
 
Hàm lấy theo các tiêu chí khác nhau
=Sum(IIf([Phong]="Tổ bảo vệ",1,0))
=Sum(IIf([Chucvu]="Trưởng phòng",1,0))
=Sum(IIf([Chucvu]="Phó khoa",1,0))
=Sum(IIf([Gioitinh]="Nữ",1,0))
=Sum(IIf([Gioitinh]="Nam",1,0))
=Count([Hoten])
=Sum(IIf([Phong]="Tổ bảo vệ",1,0))
=Sum(IIf([Phong]="Tổ bảo vệ" And [Vanhoa]="10/10",1,0))
=Sum(IIf([Phong]="P. TCCB",1,0))
=Sum(IIf([Phong]="P. TCCB" And [Hocvi]="ĐH",1,0))
=Sum(IIf([Hocvi]="03",1,0))
=Sum(IIf([Gioitinh]="01",1,0))
=Sum(IIf([Gioitinh]="02",1,0)) 



144-Hàm tính số năm bộ đội
Hàm để tính số năm đi bộ đội
=IIf([Nhapngu]<>0,Int(([Raquanngay]-[Nhapngu])/365),0)
Hàm để tính số tháng đi bộ đội
=IIf([Nhapngu]<>0,Int((([Raquanngay]-[Nhapngu])-365)/30),0) Mod 12
 
145-Hàm tính số năm làm giáo viên
Lần 1 làm giáo viên
Hàm tính năm =IIf([GVL1Tu]<>0,Int(([GVL1Den]-[GVL1Tu])/365),0)
Hàm tính tháng =IIf([GVL1Tu]<>0,Int((([GVL1Den]-[GVL1Tu])-365)/30),0) Mod 12
 
Lần 2 làm giáo viên
Hàm tính năm =IIf([GVL2Tu]<>0,Int(([GVL2Den]-[GVL2Tu])/365),0)
Hàm tính tháng =IIf([GVL2Tu]<>0,Int((([GVL2Den]-[GVL2Tu])-365)/30),0) Mod 12
 
Lần 3 làm giáo viên
Hàm tính năm =IIf([GVL3Tu]<>0,Int(([GVL3Den]-[GVL3Tu])/365),0)
Hàm tính tháng =IIf([GVL3Tu]<>0,Int((([GVL3Den]-[GVL3Tu])-365)/30),0) Mod 12
 
Tổng 3 lần làm giáo viên
Hàm tính năm =Int(([Sothang1]+[Sothang2]+[Sothang3])/12)+[Sonam1]+[Sonam2]+[Sonam3]
Hàm tính tháng  =([Sothang1]+[Sothang2]+[Sothang3]) Mod 12

Mỗi ví dụ, anh có thể kèm theo 1 demo không anh
Trân trọng cảm ơn anh
Chữ ký của huuduy.duy Xin chào, mình là huuduy.duy, Tham gia http://thuthuataccess.com/forum từ ngày 24-06 -13.
ღღღღღTài sản của huuduy.duy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#27
Kinh khủng khiếp. Đúng là cao thủ. ngồi code demo mỏi tay luôn.
Chữ ký của zinzin8x zinzin8x,gia nhập Thủ Thuật Access từ 19-01 -16.
Reply
Những người đã cảm ơn
#28
Chào các bạn
Mình rất thích Môn M.Acces Mặc dù không được đào tạo
mà chỉ xem và đọc sách cũng đã thấy nó quá hay
** MÌnh chỉ sử dựng nhung Cái hien co trong Ac mà cũng vọc vach lam duoc nhieu cai hay
Nó giúp minh làm các ứng dụng nhỏ Phục vu ngay trong công viêc mình đang làm
** Do tự học và xem sách nên minh không hiểu sâu vể Lập trình VBA lắm
nếu biết được cái Này chắc là minhg sẽ không phải làm thủ công
Xin Các Bậc Cao liên ch giáo
Xin cám ơn
Chữ ký của Nguyễn Hồng Quân ANHQUAN  Heart 
Reply
Những người đã cảm ơn
#29
(05-11-16, 02:32 PM)Nguyễn Hồng Quân Đã viết: Chào các bạn
Mình rất thích Môn M.Acces Mặc dù không được đào tạo
mà chỉ xem và đọc sách cũng đã thấy nó quá hay
** MÌnh chỉ sử dựng nhung Cái hien co trong Ac mà cũng vọc vach lam duoc nhieu cai hay
Nó giúp minh làm các ứng dụng nhỏ Phục vu ngay trong công viêc mình đang làm
** Do tự học và xem sách nên minh không hiểu sâu vể Lập trình VBA lắm
nếu biết được cái Này chắc là minhg sẽ không phải làm thủ công
Xin Các Bậc Cao liên ch giáo
Xin cám ơn

Tôi cũng như bạn. Nhưng bây giờ thì ok rồi.

Bạn xem video này: [b]Tài Liệu Video Tự học Access ( Cơ bản và Nâng cao)[/b]
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
#30
Cám ơn bạn đã chia sẻ Video này
Rất chi tiết và rễ Hiểu
Chữ ký của Nguyễn Hồng Quân ANHQUAN  Heart 
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  [Hàm] Hàm tạo Mã (dùng cho Học Sinh, Sinh Viên, Cán Bộ, Hộ Khẩu....) Xuân Thanh 17 4,412 04-11-14, 12:25 AM
Bài mới nhất: tranthanhan1962
  Tạo số chứng từ tăng dần và reset lại theo yêu cầu người dùng Noname 10 5,868 03-09-14, 11:22 PM
Bài mới nhất: tqcuong

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ơ