Bùi Thúy Thúy
Thành viên thường trực
- Tham gia
- 2/7/18
- Bài viết
- 289
- Được thích
- 38
Em có fiel Excel gồm có Sheet "DM_HD" và các Sheet khác
Khi em nhập dữ liệu vào Sheet "DM_HD"(lần 01 kể từ khi mở file lên) thì sheet "DM_HD" không bắt nhập pass, sau đó em chạy dữ liệu (tác động đến các sheet khác), đến lần 02 tiếp tục nhập dữ liệu vào sheet "DM_HD" thì sheet đó lại bắt nhập pass.
Em xem thấy có đoạn code: thì thầy phần :Sheets("DM_HD").Unprotect Password:="******"
Nhờ anh chị bỏ giúp em phần thừa trong đoạn code để khi nhập dữ liêu vào sheet "DM_HD" thì không phải nhập Pass cho sheet.\
Đoạn code có chứa Sheets("DM_HD").Unprotect Password:="******"
Khi em nhập dữ liệu vào Sheet "DM_HD"(lần 01 kể từ khi mở file lên) thì sheet "DM_HD" không bắt nhập pass, sau đó em chạy dữ liệu (tác động đến các sheet khác), đến lần 02 tiếp tục nhập dữ liệu vào sheet "DM_HD" thì sheet đó lại bắt nhập pass.
Em xem thấy có đoạn code: thì thầy phần :Sheets("DM_HD").Unprotect Password:="******"
Nhờ anh chị bỏ giúp em phần thừa trong đoạn code để khi nhập dữ liêu vào sheet "DM_HD" thì không phải nhập Pass cho sheet.\
Đoạn code có chứa Sheets("DM_HD").Unprotect Password:="******"
Mã:
Sub CAMKET()
Dim Rng As Variant
Application.ScreenUpdating = False
Sheets("DM_HD").Unprotect Password:="******"
On Error Resume Next
Set Rng = S_DM.Range("A14:A" & S_DM.[B65500].End(xlUp).Row).Find(Range("A1").Value, , , xlWhole)
If S_DM.Range("V" & Rng.Row).Value <> "" Then
Range(Range("AP18").Value).Value = S_DM.Range("D5").Value & ", " & "ngày " & Day(S_DM.Range("V" & Rng.Row).Value) & " tháng " & Month(S_DM.Range("V" & Rng.Row).Value) & " n" & ChrW(259) & "m " & Year(S_DM.Range("V" & Rng.Row).Value)
Else
Range(Range("AP18").Value).Value = S_DM.Range("D5").Value & ", " & "ngày ....... tháng ....... n" & ChrW(259) & "m 201......"
End If
Range("A4") = WorksheetFunction.max(S_DM.Range("A15:A5500"))
Range(Range("AQ1").Value).Value = "Kính g" & ChrW(7917) & "i: " & S_DM.Range("D2").Value
Range(Range("AR1").Value).Value = S_DM.Range("D" & Rng.Row).Value
Range(Range("AP2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 1, 1)
Range(Range("AQ2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 2, 1)
Range(Range("AR2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 3, 1)
Range(Range("AS2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 4, 1)
Range(Range("AT2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 5, 1)
Range(Range("AU2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 6, 1)
Range(Range("AV2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 7, 1)
Range(Range("AW2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 8, 1)
Range(Range("AX2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 9, 1)
Range(Range("AY2").Value).Value = Mid((S_DM.Range("U" & Rng.Row).Value), 10, 1)
Range(Range("AS1").Value).Value = " 3. S" & ChrW(7889) & " CMND/h" & ChrW(7897) & " chi" & ChrW(7871) & "u: " & S_DM.Range("H" & Rng.Row).Value
Range(Range("AT1").Value).Value = "Ngày c" & ChrW(7845) & "p: " & Day(S_DM.Range("I" & Rng.Row).Value) & "/" & Month(S_DM.Range("I" & Rng.Row).Value) & "/" & Year(S_DM.Range("I" & Rng.Row).Value)
Range(Range("AU1").Value).Value = "N" & ChrW(417) & "i c" & ChrW(7845) & "p: " & S_DM.Range("J" & Rng.Row).Value
Range(Range("AV1").Value).Value = " 4. " & ChrW(272) & ChrW(7883) & "a ch" & ChrW(7881) & " c" & ChrW(432) & " trú: " & S_DM.Range("K" & Rng.Row).Value
Range(Range("AW1").Value).Value = S_DM.Range("D2").Value
Range(Range("AX1").Value).Value = " Tôi cam k" & ChrW(7871) & "t r" & ChrW(7857) & "ng, trong n" & ChrW(259) & "m " & S_DM.Range("W" & Rng.Row).Value & " tôi ch" & ChrW(7881) & " có thu nh" & ChrW(7853) & "p duy nh" & ChrW(7845) & "t t" & ChrW(7841) & "i " & S_DM.Range("D2").Value & _
", nh" & ChrW(432) & "ng " & ChrW(432) & ChrW(7899) & "c tính t" & ChrW(7893) & "ng thu nh" & ChrW(7853) & "p không quá " & Format(Range("A12"), "#,###.#####") & " tri" & ChrW(7879) & "u " & ChrW(273) & ChrW(7891) & "ng " & ChrW(8220) & "Ghi b" & ChrW(7857) & "ng ch" & ChrW(7919) & ": " & _
VND(Sheet2.Range("A12")) & ChrW(8221) & " nên không " & ChrW(273) & ChrW(7871) & "n m" & ChrW(7913) & "c ph" & ChrW(7843) & "i n" & ChrW(7897) & "p thu" & ChrW(7871) & " TNCN. "
Range(Range("AX1").Value).Characters(Start:=71, Length:=Len(S_DM.Range("D2").Value)).Font.FontStyle = "Bold"
Range(Range("BA1").Value).Value = S_DM.Range("D" & Rng.Row).Value
Sheets("DM_HD").Protect Password:="******", AllowFiltering:=True
End Sub
Mã:
Function UpperUni(uni) As String
UpperUni = UCase(uni)
End Function
Function ProperUni(uni As String) As String
Dim vt As Long
If Trim(uni) = "" Then
ProperUni = uni
Else
uni = LCase(uni)
Mid(uni, 1, 1) = UCase(Mid(uni, 1, 1))
Do
vt = InStr(vt + 1, uni, " ")
If vt = 0 Then Exit Do
Mid(uni, vt + 1, 1) = UCase(Mid(uni, vt + 1, 1))
Loop
ProperUni = uni
End If
End Function
Sub CallNhapLieu()
Sheets("Fo_HDLD").Select
Sheets("DM_HD").Unprotect Password:="******"
So_HDong = Range("G4").Value
HoTen1 = Range("F5").Value
ChucVu1 = Range("H5").Value
HoTen2 = Range("E8").Value
NgaySinh2 = Range("E9").Value
NoiSinh2 = Range("E10").Value
DChi_TTru2 = Range("E11").Value
SoCMND2 = Range("E12").Value
NgayCap2 = Range("E13").Value
NoiCap2 = Range("E14").Value
QuocTich2 = Range("G8").Value
MST_CaNhan2 = Range("G9").Value
NgheNghiep2 = Range("G10").Value
MucLuong2 = Range("G11").Value
CDanhCMon2 = Range("G12").Value
CViecDGiao2 = Range("G13").Value
CVuDGiao2 = Range("G14").Value
Noi_LViec2 = Range("I8").Value
HThuc_HDong2 = Range("I9").Value
HD_KTuNgay2 = Range("I10").Value
HD_KDenNgay2 = Range("I11").Value
TViec_TuNgay2 = Range("I12").Value
TViec_DenNgay2 = Range("I13").Value
Ngay_CKet2 = Range("I14").Value
Nam_CKet2 = Range("I15").Value
If Range("G4") = "" Or Range("F5") = "" Or Range("E8") = "" Or Range("I10") = "" Then
MsgBox "Du lieu chua nhap du" & Chr(13) & "Yeu cau kiem tra lai", , "Thong Bao"
Exit Sub
Else
Sheets("DM_HD").Select
n = Range("H1").Value
Range("B1").Select
ActiveCell.Offset(n + 3, 0).Value = So_HDong
ActiveCell.Offset(n + 3, 1).Value = MucLuong2
ActiveCell.Offset(n + 3, 2).Value = HoTen2
ActiveCell.Offset(n + 3, 3).Value = NgheNghiep2
ActiveCell.Offset(n + 3, 4).Value = NgaySinh2
ActiveCell.Offset(n + 3, 5).Value = NoiSinh2
ActiveCell.Offset(n + 3, 6).Value = SoCMND2
ActiveCell.Offset(n + 3, 7).Value = NgayCap2
ActiveCell.Offset(n + 3, 8).Value = NoiCap2
ActiveCell.Offset(n + 3, 9).Value = DChi_TTru2
ActiveCell.Offset(n + 3, 10).Value = QuocTich2
ActiveCell.Offset(n + 3, 11).Value = CDanhCMon2
ActiveCell.Offset(n + 3, 12).Value = CVuDGiao2
ActiveCell.Offset(n + 3, 13).Value = CViecDGiao2
ActiveCell.Offset(n + 3, 14).Value = HThuc_HDong2
ActiveCell.Offset(n + 3, 15).Value = HD_KTuNgay2
ActiveCell.Offset(n + 3, 16).Value = HD_KDenNgay2
ActiveCell.Offset(n + 3, 17).Value = TViec_TuNgay2
ActiveCell.Offset(n + 3, 18).Value = TViec_DenNgay2
ActiveCell.Offset(n + 3, 19).Value = MST_CaNhan2
ActiveCell.Offset(n + 3, 20).Value = Ngay_CKet2
ActiveCell.Offset(n + 3, 21).Value = Nam_CKet2
ActiveCell.Offset(n + 3, 22).Value = Noi_LViec2
ActiveCell.Offset(n + 3, 23).Value = HoTen1
ActiveCell.Offset(n + 3, 24).Value = ChucVu1
Sheets("Fo_HDLD").Select
Range("G4,E8:E14,G8:G14,I8:I14").Select
Selection.ClearContents
Range("C3").Select
Sheets("DM_HD").Protect Password:="******", AllowFiltering:=True
Call STT
MsgBox "NHAP LIEU THANH CONG" & vbCrLf & "", vbInformation, "DA NHAP LIEU"
End If
End Sub
Public Sub NhapLai()
Sheets("Fo_HDLD").Select
Sheets("DM_HD").Unprotect Password:="******"
So_HDong = Range("G4").Value
HoTen1 = Range("F5").Value
ChucVu1 = Range("H5").Value
HoTen2 = Range("E8").Value
NgaySinh2 = Range("E9").Value
NoiSinh2 = Range("E10").Value
DChi_TTru2 = Range("E11").Value
SoCMND2 = Range("E12").Value
NgayCap2 = Range("E13").Value
NoiCap2 = Range("E14").Value
QuocTich2 = Range("G8").Value
MST_CaNhan2 = Range("G9").Value
NgheNghiep2 = Range("G10").Value
MucLuong2 = Range("G11").Value
CDanhCMon2 = Range("G12").Value
CViecDGiao2 = Range("G13").Value
CVuDGiao2 = Range("G14").Value
Noi_LViec2 = Range("I8").Value
HThuc_HDong2 = Range("I9").Value
HD_KTuNgay2 = Range("I10").Value
HD_KDenNgay2 = Range("I11").Value
TViec_TuNgay2 = Range("I12").Value
TViec_DenNgay2 = Range("I13").Value
Ngay_CKet2 = Range("I14").Value
Nam_CKet2 = Range("I15").Value
If Range("G4") = "" Then
MsgBox "Du lieu chua nhap du" & Chr(13) & "Yeu cau kiem tra lai", , "Thong Bao"
Exit Sub
Else
n = Val(Sheets("Fo_HDLD").Range("E4").Value) + 9
Sheets("DM_HD").Select
Range("B1").Select
ActiveCell.Offset(n + 3, 0).Value = So_HDong
ActiveCell.Offset(n + 3, 1).Value = MucLuong2
ActiveCell.Offset(n + 3, 2).Value = HoTen2
ActiveCell.Offset(n + 3, 3).Value = NgheNghiep2
ActiveCell.Offset(n + 3, 4).Value = NgaySinh2
ActiveCell.Offset(n + 3, 5).Value = NoiSinh2
ActiveCell.Offset(n + 3, 6).Value = SoCMND2
ActiveCell.Offset(n + 3, 7).Value = NgayCap2
ActiveCell.Offset(n + 3, 8).Value = NoiCap2
ActiveCell.Offset(n + 3, 9).Value = DChi_TTru2
ActiveCell.Offset(n + 3, 10).Value = QuocTich2
ActiveCell.Offset(n + 3, 11).Value = CDanhCMon2
ActiveCell.Offset(n + 3, 12).Value = CVuDGiao2
ActiveCell.Offset(n + 3, 13).Value = CViecDGiao2
ActiveCell.Offset(n + 3, 14).Value = HThuc_HDong2
ActiveCell.Offset(n + 3, 15).Value = HD_KTuNgay2
ActiveCell.Offset(n + 3, 16).Value = HD_KDenNgay2
ActiveCell.Offset(n + 3, 17).Value = TViec_TuNgay2
ActiveCell.Offset(n + 3, 18).Value = TViec_DenNgay2
ActiveCell.Offset(n + 3, 19).Value = MST_CaNhan2
ActiveCell.Offset(n + 3, 20).Value = Ngay_CKet2
ActiveCell.Offset(n + 3, 21).Value = Nam_CKet2
ActiveCell.Offset(n + 3, 22).Value = Noi_LViec2
ActiveCell.Offset(n + 3, 23).Value = HoTen1
ActiveCell.Offset(n + 3, 24).Value = ChucVu1
Sheets("Fo_HDLD").Select
Range("G4,E8:E14,G8:G14,I8:I14").Select
Selection.ClearContents
Range("C3").Select
Sheets("DM_HD").Protect Password:="******", AllowFiltering:=True
MsgBox "NHAP LIEU THANH CONG" & vbCrLf & "", vbInformation, "DA NHAP LIEU"
End If
End Sub
Public Sub STT()
Dim i As Long, lR As Long
lR = Sheets("DM_HD").Range("B" & Rows.Count).End(xlUp).Row
For i = 1 To lR - 13
Sheets("DM_HD").Range("A" & i + 13) = i
Next i
End Sub
Sub Xoa_Fo_HDLD()
Range("G4,E8:E14,G8:G14,I8:I14").Select
Selection.ClearContents
Range("G4").Select
End Sub
Public Sub aaa()
Dim Cll As Range, STT As Range, i As Long
Set STT = Sheets("DM_HD").Range("A14:A" & Sheets("DM_HD").Range("A2500").End(xlUp).Row)
For Each Cll In STT
If Cll = Sheet4.Range("E4") Then
With Sheet4
For i = 1 To 1
.Range("G" & i + 3) = Cll.Offset(0, i)
Next i
For i = 1 To 1
.Range("F" & i + 4) = Cll.Offset(0, 23 + i)
Next i
For i = 1 To 1
.Range("H" & i + 4) = Cll.Offset(0, 24 + i)
Next i
For i = 1 To 1
.Range("E" & i + 7) = Cll.Offset(0, 2 + i)
Next i
For i = 1 To 2
.Range("E" & i + 8) = Cll.Offset(0, 4 + i)
Next i
For i = 1 To 1
.Range("E" & i + 10) = Cll.Offset(0, 9 + i)
Next i
For i = 1 To 3
.Range("E" & i + 11) = Cll.Offset(0, 6 + i)
Next i
For i = 1 To 1
.Range("G" & i + 8) = Cll.Offset(0, 10 + i)
Next i
For i = 1 To 1
.Range("G" & i + 9) = Cll.Offset(0, 19 + i)
Next i
For i = 1 To 1
.Range("G" & i + 10) = Cll.Offset(0, 3 + i)
Next i
For i = 1 To 1
.Range("G" & i + 11) = Cll.Offset(0, 1 + i)
Next i
For i = 1 To 1
.Range("G" & i + 12) = Cll.Offset(0, 11 + i)
Next i
For i = 1 To 1
.Range("G" & i + 13) = Cll.Offset(0, 13 + i)
Next i
For i = 1 To 1
.Range("G" & i + 14) = Cll.Offset(0, 12 + i)
Next i
For i = 1 To 1
.Range("I" & i + 8) = Cll.Offset(0, 22 + i)
Next i
For i = 1 To 5
.Range("I" & i + 9) = Cll.Offset(0, 14 + i)
Next i
For i = 1 To 1
.Range("I" & i + 14) = Cll.Offset(0, 20 + i)
Next i
End With
End If
Next Cll
End Sub
Public Sub lui()
Dim Cll As Range, STT As Range, i As Long, tt As Long
Set STT = Sheets("DM_HD").Range("A14:A" & Sheets("DM_HD").Range("A2500").End(xlUp).Row)
Sheet4.Range("E4") = Sheet4.Range("E4") - 1
For Each Cll In STT
If Cll = Sheet4.Range("E4") And Sheet4.Range("E4") > 0 Then
With Sheet4
For i = 1 To 1
.Range("G" & i + 3) = Cll.Offset(0, i)
Next i
For i = 1 To 1
.Range("F" & i + 4) = Cll.Offset(0, 23 + i)
Next i
For i = 1 To 1
.Range("H" & i + 4) = Cll.Offset(0, 24 + i)
Next i
For i = 1 To 1
.Range("E" & i + 7) = Cll.Offset(0, 2 + i)
Next i
For i = 1 To 2
.Range("E" & i + 8) = Cll.Offset(0, 4 + i)
Next i
For i = 1 To 1
.Range("E" & i + 10) = Cll.Offset(0, 9 + i)
Next i
For i = 1 To 3
.Range("E" & i + 11) = Cll.Offset(0, 6 + i)
Next i
For i = 1 To 1
.Range("G" & i + 7) = Cll.Offset(0, 10 + i)
Next i
For i = 1 To 1
.Range("G" & i + 8) = Cll.Offset(0, 19 + i)
Next i
For i = 1 To 1
.Range("G" & i + 9) = Cll.Offset(0, 3 + i)
Next i
For i = 1 To 1
.Range("G" & i + 10) = Cll.Offset(0, 1 + i)
Next i
For i = 1 To 1
.Range("G" & i + 11) = Cll.Offset(0, 11 + i)
Next i
For i = 1 To 1
.Range("G" & i + 12) = Cll.Offset(0, 13 + i)
Next i
For i = 1 To 1
.Range("G" & i + 13) = Cll.Offset(0, 12 + i)
Next i
For i = 1 To 1
.Range("I" & i + 7) = Cll.Offset(0, 22 + i)
Next i
For i = 1 To 5
.Range("I" & i + 8) = Cll.Offset(0, 14 + i)
Next i
For i = 1 To 1
.Range("I" & i + 13) = Cll.Offset(0, 20 + i)
Next i
End With
End If
Next Cll
End Sub
Public Sub tien()
Dim Cll As Range, STT As Range, i As Long, tt As Long
Set STT = Sheets("DM_HD").Range("A14:A" & Sheets("DM_HD").Range("A2500").End(xlUp).Row)
Sheet4.Range("E4") = Sheet4.Range("E4") + 1
For Each Cll In STT
If Cll = Sheet4.Range("E4") And Sheet4.Range("E4") > 0 Then
With Sheet4
For i = 1 To 1
.Range("G" & i + 3) = Cll.Offset(0, i)
Next i
For i = 1 To 1
.Range("F" & i + 4) = Cll.Offset(0, 23 + i)
Next i
For i = 1 To 1
.Range("H" & i + 4) = Cll.Offset(0, 24 + i)
Next i
For i = 1 To 1
.Range("E" & i + 7) = Cll.Offset(0, 2 + i)
Next i
For i = 1 To 2
.Range("E" & i + 8) = Cll.Offset(0, 4 + i)
Next i
For i = 1 To 1
.Range("E" & i + 10) = Cll.Offset(0, 9 + i)
Next i
For i = 1 To 3
.Range("E" & i + 11) = Cll.Offset(0, 6 + i)
Next i
For i = 1 To 1
.Range("G" & i + 7) = Cll.Offset(0, 10 + i)
Next i
For i = 1 To 1
.Range("G" & i + 8) = Cll.Offset(0, 19 + i)
Next i
For i = 1 To 1
.Range("G" & i + 9) = Cll.Offset(0, 3 + i)
Next i
For i = 1 To 1
.Range("G" & i + 10) = Cll.Offset(0, 1 + i)
Next i
For i = 1 To 1
.Range("G" & i + 11) = Cll.Offset(0, 11 + i)
Next i
For i = 1 To 1
.Range("G" & i + 12) = Cll.Offset(0, 13 + i)
Next i
For i = 1 To 1
.Range("G" & i + 13) = Cll.Offset(0, 12 + i)
Next i
For i = 1 To 1
.Range("I" & i + 7) = Cll.Offset(0, 22 + i)
Next i
For i = 1 To 5
.Range("I" & i + 8) = Cll.Offset(0, 14 + i)
Next i
For i = 1 To 1
.Range("I" & i + 13) = Cll.Offset(0, 20 + i)
Next i
End With
End If
Next Cll
End Sub
Lần chỉnh sửa cuối: