Chào mừng đến với Diễn đàn Dân Kế Toán - Kế toán tổng hợp thực tế.
Kết quả 1 đến 5 của 5
  1. #1
    Ngày tham gia
    Aug 2015
    Bài viết
    0

    Cách chuyển dữ liệu từ máy chấm công sang bảng chấm công có sẵn.

    :chay:​
    Dữ liệu từ máy chấm công được xuất ra trang tính 'DuLieu' (Xem file đính kèm)
    Dữ liệu này cần một số chỉnh lý như sau:
    Dữ liệu này có quá nhiều trường không có số liệu, cũng như không cần thiết cho công đoạn chuyển dữ liệu của chúng ta. Vậy nên chúng ta cần copy những trường cần thiết từ CSDL (cơ sở dữ liệu) sang vùng mới (các cột từ [BA..Bg]; đó là các trường [Name], [Staff No], [Dept], [Date], [Week], [In] & [Out])
    Thực ra chúng ta không cần đến trường[Week], nhưng nó sẽ được dùng vô việc khác về sau.
    Việc chép này chúng ta nên làm bằng tay vì mỗi tháng chỉ làm 1 lần duy nhất.

    Tuy nhiên, sau đó chúng thấy, trong vùng vừa được chép có rất nhiều hàng mà trị ở trường [In] còn trống số liệu. (Có nghĩa là máy vẫn liệt kê danh sách cả những người không bấm thẻ trong ngày). Các dòng này sẽ gây tốn thời gian đến việc chuyển số liệu của chúng ta; Vậy nên chúng ta viết ra 1 macro có tên là Sub Database() để bỏ đi những dòng không cần thiết trong tính toán về sau;

    Nhờ macro này, chúng ta có CSDL hoàn chỉnh từ cột [CA] đến cột [CG] trong trang tính 'DuLieu'

    Các bạn xem tiếp trong file, một khi bấm vô nút lệnh 'Run' trong trang 'BCC'
    Cần nói thêm rằng, 'BCC' là bảng đã được thiết kế sẵn để macro Sub ChuyenCong()
    thực hiện việc chép chuyển thành bảng chấm công hoàn chỉnh
    Trong 'BCC' này, vùng công được tô màu nền khác thường là những công làm ca đêm (Ca đêm 12 giờ kết tử 19h hôm trước đến 7g0 sáng hôm sau

    Chúc các bạn vui vẻ!
    :chay:​

  2. #2
    Ngày tham gia
    Mar 2016
    Bài viết
    2
    Ðề: Cách chuyển dữ liệu từ máy chấm công sang bảng chấm công có sẵn.




    [QUOTE]Gửi mọi người, mong mọi người giúp em vụ này, lấy dữ liệu theo điều kiện:
    Trong file e gửi có 2 sheet là namebangcode
    Trong Name bao gồm [Họ tên], [ID Code], [Employer ID], [Ngày tháng năm . . . ]
    Trong bangcode bao gồm [Ngày tháng năm], [ID Code], [Employer ID], giờ [in] [out].

    Vấn đề của em là làm sao để lọc cái [time in], [out] từ bên sheet bangcode bỏ sang sheet Name tương ứng với ID Code, Employer ID của nhân viên. Đúng theo ngày đó. Em tìm mấy bài tham khảo từ các diễn đàn nhưng vẫn chưa làm được :cheer: :cheer: :cheer:
    :bdance: :bdance: :bdance:​

  3. #3
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Cách chuyển dữ liệu từ máy chấm công sang bảng chấm công có sẵn.

    Thông thường có 1 số phần mềm khi xuất dữ liệu sang excel nằm ở dạng text nên không thể tính toán số công, để chuyển dữ liệu từ dạng Text sang dạng số tham khảo bài này.
    H?i v? cch chuy?n ngy thng n?m (mm/dd/yyyy) t? d?ng text sang d?ng s?

  4. #4
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Về cách xử lý file chấm công bấm thẻ dạng Text

    Ở bài #2, tại trang tính 'BangCode' có trường 'Date' đã là kiểu dữ liệu số, chứ không còn ở dạng text nữa;
    Còn ở bài đầu ta thấy các trường cần để tính toán đều ở dạng text, ngoài trường [Date] đã nêu, ta còn thấy trường [In] & [Out] (dùng để ghi thời gian bấm thẻ ra vô cơ quan cũng là dạng text:k6233143:​[/RIGHT]

  5. #5
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Chuyển số liệu chấm công 2 buổi sang bảng chấm công



    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit Sub KiemNV[/COLOR][COLOR=#007700]() [/COLOR][COLOR=#0000BB]Dim Cls [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Rng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]sRng [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Sh [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Worksheet Dim MyAdd [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]String Dim Ngày [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Byte[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Rws [/COLOR][COLOR=#007700]As [/COLOR][COLOR=#0000BB]Long Sheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"BCC"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]Rws [/COLOR][COLOR=#007700]= [[/COLOR][COLOR=#0000BB]b12[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]CurrentRegion[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Rows[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Count [/COLOR][COLOR=#007700][[/COLOR][COLOR=#0000BB]j12[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]Resize[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Rws[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]31[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]ClearContents[/COLOR][COLOR=#007700]: [/COLOR][COLOR=#0000BB]Application[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ScreenUpdating [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]False Set Sh [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]ThisWorkbook[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Worksheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"3-2013"[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Set Rng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Sh[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Sh[/COLOR][COLOR=#007700].[[/COLOR][COLOR=#0000BB]l7[/COLOR][COLOR=#007700]], [/COLOR][COLOR=#0000BB]Sh[/COLOR][COLOR=#007700].[[/COLOR][COLOR=#0000BB]l7[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlDown[/COLOR][COLOR=#007700])) For [/COLOR][COLOR=#0000BB]Each Cls In Range[/COLOR][COLOR=#007700]([[/COLOR][COLOR=#0000BB]c13[/COLOR][COLOR=#007700]], [[/COLOR][COLOR=#0000BB]c999[/COLOR][COLOR=#007700]].[/COLOR][COLOR=#0000BB]End[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]xlUp[/COLOR][COLOR=#007700])) If [/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]<> [/COLOR][COLOR=#DD0000]"" [/COLOR][COLOR=#0000BB]Then Set sRng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Find[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700], , [/COLOR][COLOR=#0000BB]xlFormulas[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]xlWhole[/COLOR][COLOR=#007700]) If [/COLOR][COLOR=#0000BB]sRng Is Nothing Then Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Interior[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ColorIndex [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]38 [/COLOR][COLOR=#007700]Else [/COLOR][COLOR=#0000BB]MyAdd [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Address [/COLOR][COLOR=#007700]Do [/COLOR][COLOR=#0000BB]With Sh[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Cells[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Row[/COLOR][COLOR=#007700], [/COLOR][COLOR=#DD0000]"D"[/COLOR][COLOR=#007700]) If .[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]<> [/COLOR][COLOR=#DD0000]"" [/COLOR][COLOR=#007700]And .[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]3[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]<> [/COLOR][COLOR=#DD0000]"" [/COLOR][COLOR=#0000BB]Then Ngày [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Day[/COLOR][COLOR=#007700](.[/COLOR][COLOR=#0000BB]Value[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]Ngày [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]3[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700](, [/COLOR][COLOR=#0000BB]Ngày [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]3[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value [/COLOR][COLOR=#007700]+ [/COLOR][COLOR=#0000BB]_ 24 [/COLOR][COLOR=#007700]* [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Offset[/COLOR][COLOR=#007700](, -[/COLOR][COLOR=#0000BB]2[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Value End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]End With Set sRng [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Rng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]FindNext[/COLOR][COLOR=#007700]([/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700]) [/COLOR][COLOR=#0000BB]Loop [/COLOR][COLOR=#007700]While [/COLOR][COLOR=#0000BB]Not sRng Is Nothing [/COLOR][COLOR=#007700]And [/COLOR][COLOR=#0000BB]sRng[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Address [/COLOR][COLOR=#007700]<> [/COLOR][COLOR=#0000BB]MyAdd [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Cls[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Row Mod 10 [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]9 Then Application[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ScreenUpdating [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]True Application[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ScreenUpdating [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]False End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]End [/COLOR][COLOR=#007700]If [/COLOR][COLOR=#0000BB]Next Cls Application[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]ScreenUpdating [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]True End Sub [/COLOR
    :k6336855:​
    Các bạn tham khảo file tại Xin cc anh ch? gip em l?p cng th?c ch?m cng

 

 

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •