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ế.
Trang 1 của 4 123 ... CuốiCuối
Kết quả 1 đến 10 của 38
  1. #1
    Ngày tham gia
    Aug 2015
    Bài viết
    0

    Tạo 1 sheet như Form để nhập liệu


    (mã nguồn mở, các bạn có thể xem code để tham khảo, các file khác tôi khóa nguồn mong các bạn thông cãm).

    Thông thường, nếu dùng UserFrm thì người dùng khó lòng mà sửa được tiêu đề để nhập dữ liệu vào bảng tính. Các bạn có thể sử dụng 1 sheet như Form để nhập liệu và có thể sửa tiêu đề theo nhu cầu sử dụng của mình.

    Hôm nay tôi tặng các bạn File dùng Sheet như Form để gõ dữ liệu vào sheet này và nhập dữ liệu vào sheet khác, để tiện sử dụng trong tất cả các công việc.

    Trong File có 3 sheet: Sheet có tên NhapLieu dùng để gõ dữ liệu đầu vào, sheet có tên Theodoi dùng chứa dữ liệu nhập vào, sheet có tên DataList dùng nơi chứa dữ liệu dùng Datvalidation để tạo Li st nơi Sheet có tên NhapLieu.

    Hướng dẫn:
    - Sheet có tên NhapLieu: Chỉ nhập dữ liệu từ C3 đến C11 và C13 để ghi chú nội dung cần. Khi nhập dữ liệu xong bạn click vào Shapes có tên Nhập dữ liệu vào sheet Theo dõi, thì macro lấy dữ liệu từ C3 đến C13của Sheet NhapLieu vào sheet có tên Theodoi (từ cột B đến cột L với dòng trống kế tiếp tương ứng) và tự xóa vùng dữ liệu từ C3 đến C13 của Sheet NhapLieu.
    - Tại cột A tôi dùng hàm để đánh số thứ tự tự động, nếu bạn cần xóa 1 dòng nào đó nó sẽ tự động nhảy số thứ tự lên.

    Lưu ý:
    01. Hàm tại A4 là =IF(B4<>"",COUNTA($B$4:B4),"") khi bạn nhập dự liệu vào thì nó tự động đánh số thứ tự, trong sheet Theodoi tôi mới Fill đến A10 cần đến đâu thì bạn Fill xuống tiếp.
    02. Vùng tiêu đề từ B3 đến B13 của Sheet NhapLieu bạn có thể sử đổi cho phù hợp với công việc và kể cả tên sheet mà không làm anh hưởng đến Code trong Module1. Nếu bạn cần ít tiêu đề hơn thì bạn xóa C 12, C13 và D12 sửa những tiêu đề của các dòng trên cho phù hợp với công việc và làm ẩn hết các dòng không cần nhập dữ liệu (bên dưới). Tải File theo Link.

    https://www.box.com/s/583c01c989902c3a2cb4

  2. #2
    Ngày tham gia
    Nov 2015
    Bài viết
    4
    Ðề: Ta có thể dùng Copy - paste Tranpose

    như ví dụ sau:



    Mã nguồn PHP:
    [COLOR=#000000]
    Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"C3:C13"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Copy Sheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"Theodoi"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"B4"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]PasteSpecial Paste[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlPasteAll[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Operation[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlNone[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]SkipBlanks[/COLOR][COLOR=#007700]:= [/COLOR][COLOR=#0000BB]_ False[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Transpose[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]True [/COLOR

  3. #3
    Ngày tham gia
    Aug 2015
    Bài viết
    5
    Ðề: Ta có thể dùng Copy - paste Tranpose




    Trích dẫn Gửi bởi TQChanh
    như ví dụ sau:



    Mã nguồn PHP:
    [COLOR=#000000]
    Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"C3:C13"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Copy Sheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"Theodoi"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"B4"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]PasteSpecial Paste[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlPasteAll[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Operation[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlNone[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]SkipBlanks[/COLOR][COLOR=#007700]:= [/COLOR][COLOR=#0000BB]_ False[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Transpose[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]True [/COLOR
    Code của bạn TQChanh do dùng Record Macro mà có, xin nói thêm sau khi Record Macro xong thì cần khai báo thêm biến mới sử dụng được.
    Code nhập liệu cần bổ sung thêm như sau:


    Mã nguồn PHP:
    [COLOR=#000000]
    Option Explicit [/COLOR][COLOR=#DD0000]'Khai báo bién Dim wsTheodoi As Worksheet Dim wsNhapLieu As Worksheet Dim rNextCl As Range Private Sub cmdNhapLieu_Click() '[/COLOR][COLOR=#0000BB]Thiét lap các bién Set wsNhapLieu [/COLOR][COLOR=#007700]= [/COLOR][COLOR=#0000BB]Sheet1 Range[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"C3:C13"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select Selection[/COLOR][COLOR=#007700].[/COLOR][COLOR=#0000BB]Copy [/COLOR][COLOR=#DD0000]'' [/COLOR][COLOR=#0000BB]Chon sheet Theodoi de nhap lieu Sheets[/COLOR][COLOR=#007700]([/COLOR][COLOR=#DD0000]"Theodoi"[/COLOR][COLOR=#007700]).[/COLOR][COLOR=#0000BB]Select With rNextCl Selection[/COLOR][COLOR=#007700]. [/COLOR][COLOR=#0000BB]PasteSpecial Paste[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlPasteAll[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Operation[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]xlNone[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]SkipBlanks[/COLOR][COLOR=#007700]:= [/COLOR][COLOR=#0000BB]_ False[/COLOR][COLOR=#007700], [/COLOR][COLOR=#0000BB]Transpose[/COLOR][COLOR=#007700]:=[/COLOR][COLOR=#0000BB]True End With End Sub [/COLOR] 
    Khi nhập dữ liệu xong (trong vùng C3:C13 của sheet NhapLieu), sang sheet Theodoi bạn click chọn bất kỳ chỗ muốn nhập, và nhấn vào nút NHẬP LIỆU thì dữ liệu sẽ được nhập nơi vị trí bạn vừa chọn. Xem File đính kèm:
    https://www.box.com/s/bbc48f7704c3c29e82f9

  4. #4
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Tạo 1 sheet như Form để nhập liệu

    form nhập liệu đây

    View attachment 11103

  5. #5
    Ngày tham gia
    Sep 2015
    Bài viết
    63
    Ðề: Tạo 1 sheet như Form để nhập liệu




    Trích dẫn Gửi bởi hoangvinh_tb
    form nhập liệu đây

    View attachment 11103
    Tôi nghĩ bạn làm ở Ngân hàng, Form của bạn chỉ có tác dụng thống kê loại tiền và lượng tiền còn thống kê vào mục đích gì thì không có nội dung.
    Trong đó sheet 'TONG TIEN' và Sheet NHAP sử dụng như sau:
    Dòng đầu Sheet NHAP dùng hàm Sum(A2:A30),………. Sum(J2:J30)
    Các Name
    Bangke ='TONG TIEN'!$A$4:$D$14
    Tongtien ='TONG TIEN'!$A$1
    Nhanhcham ='TONG TIEN'!$K$1
    Sophut ='TONG TIEN'!$L$1
    St =NHAP!$L$2

    L2 là Link từ ='TONG TIEN'!D14-K2 (tôi nghĩ không cần –K2 vì ô này rổng)
    Sheet TONG TIEN là Link từ A2:J2 của sheet NHAP

  6. #6
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Tạo 1 sheet như Form để nhập liệu

    Anh Bé Ơi
    file form đó mình vào bảng tính excel như thế nào vậy hả Anh?



    Trích dẫn Gửi bởi be09
    Tôi nghĩ bạn làm ở Ngân hàng, Form của bạn chỉ có tác dụng thống kê loại tiền và lượng tiền còn thống kê vào mục đích gì thì không có nội dung.
    Trong đó sheet 'TONG TIEN' và Sheet NHAP sử dụng như sau:
    Dòng đầu Sheet NHAP dùng hàm Sum(A2:A30),………. Sum(J2:J30)
    Các Name
    Bangke ='TONG TIEN'!$A$4:$D$14
    Tongtien ='TONG TIEN'!$A$1
    Nhanhcham ='TONG TIEN'!$K$1
    Sophut ='TONG TIEN'!$L$1
    St =NHAP!$L$2

    L2 là Link từ ='TONG TIEN'!D14-K2 (tôi nghĩ không cần –K2 vì ô này rổng)
    Sheet TONG TIEN là Link từ A2:J2 của sheet NHAP

  7. #7
    Ngày tham gia
    Aug 2015
    Bài viết
    5
    Ðề: Tạo 1 sheet như Form để nhập liệu

    Mở bảng tính hiện ra cửa sổ Sercurity Warning và click vào nút Disable Macros.

  8. #8
    Ngày tham gia
    Aug 2015
    Bài viết
    2
    Ðề: Tạo 1 sheet như Form để nhập liệu

    Xin chào các ace !

    Tình hình là em đang có 1 nhu cầu bài toán gần giống với anh đưa ra giải pháp của topic này , nhưng bài của e không phải chỉ đưa dữ liệu về 1 sheet như anh be09 mà rất nhiều sheet ( chính xác là 36 sheet ) , e muốn khi nhập liệu sẽ có thể chon sheet mà minh muốn đưa dữ liệu vào ạ ! Nhưng về macro thì e mù tịt , e tìm mõi mòn mới thấy đc topic như mình mong đợi này , có điều topic này được đăng lâu rồi nên bây giờ thắc mắc và cần giúp đỡ không biết có đc quan tâm nữa hay ko, e tha thiết mong ace giúp đỡ e ạ !
    E ko biết up file ở chỗ nào ...hu hu....

  9. #9
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Tạo 1 sheet như Form để nhập liệu




    Trích dẫn Gửi bởi bexiu2806
    Xin chào các ace !

    Tình hình là em đang có 1 nhu cầu bài toán gần giống với anh đưa ra giải pháp của topic này , nhưng bài của e không phải chỉ đưa dữ liệu về 1 sheet như anh be09 mà rất nhiều sheet ( chính xác là 36 sheet ) , e muốn khi nhập liệu sẽ có thể chon sheet mà minh muốn đưa dữ liệu vào ạ ! Nhưng về macro thì e mù tịt , e tìm mõi mòn mới thấy đc topic như mình mong đợi này , có điều topic này được đăng lâu rồi nên bây giờ thắc mắc và cần giúp đỡ không biết có đc quan tâm nữa hay ko, e tha thiết mong ace giúp đỡ e ạ !
    E ko biết up file ở chỗ nào ...hu hu....
    Em yêu cầu tạo Form và muốn nhập vào bất kỳ sheet nào thì cũng được nhưng phải dùng đến False, True nhiều quá thì hơi phức tạp.

    Theo anh thì làm như thế này: Nếu tiêu đề của 36 sheet là giống nhau thì chỉ cần tạo Form nhập cho 1 sheet là đủ, sau đó tạo 1 nút để khi cần tách sheet theo yêu cầu thì nhấn vào nút tách sheet nó sẽ tự phân loại và tách ra 36 sheet như em đã nêu, em tải File và tham khảo bài 5 của bài viết ở Link sau:

    http://www.**************/forum/excel-va-vba/gop-va-tach-du-lieu-thanh-nhieu-sheet.212114.html

    Làm kiểu này thì tổng hợp 1 nhát là xong và có thể xuất dữ liệu bất kỳ nào mình cần, chứ làm như kiểu em yêu cầu nội di chuyển từ sheet này qua sheet khác thì đã mệt bở hơi tai rồi còn thời gian đâu mà ngồi tính toán theo từng sheet.

  10. #10
    Ngày tham gia
    Aug 2015
    Bài viết
    0
    Ðề: Tạo 1 sheet như Form để nhập liệu




    Trích dẫn Gửi bởi be09
    Em yêu cầu tạo Form và muốn nhập vào bất kỳ sheet nào thì cũng được nhưng phải dùng đến False, True nhiều quá thì hơi phức tạp.

    Theo anh thì làm như thế này: Nếu tiêu đề của 36 sheet là giống nhau thì chỉ cần tạo Form nhập cho 1 sheet là đủ, sau đó tạo 1 nút để khi cần tách sheet theo yêu cầu thì nhấn vào nút tách sheet nó sẽ tự phân loại và tách ra 36 sheet như em đã nêu, em tải File và tham khảo bài 5 của bài viết ở Link sau:

    http://www.**************/forum/excel-va-vba/gop-va-tach-du-lieu-thanh-nhieu-sheet.212114.html

    Làm kiểu này thì tổng hợp 1 nhát là xong và có thể xuất dữ liệu bất kỳ nào mình cần, chứ làm như kiểu em yêu cầu nội di chuyển từ sheet này qua sheet khác thì đã mệt bở hơi tai rồi còn thời gian đâu mà ngồi tính toán theo từng sheet.
    A chỉ e cách up file đi, sao e ko thấy chỗ nào để up hết . Cái file của e đại loại là e dùng để tính tiền cho quán trà sữa .e có 1 sheet tên là HOME , 36 sheet còn lại tương ứng với số bàn . Ở sheet HOME có tạo link đến 36 sheet kia , e muốn ở sheet HOME có 1 khu vực để nhập lieu và có thể chuyển dữ lieu đó đến sheet có số bàn tương ứng .
    Mà theo đề nghị của a cũng hợp lí đó,nhưng vậy khi có bàn tính tiền ,e fai in fieu ra thì lại click sheet ( số bàn ) trên tab ?

 

 
Trang 1 của 4 123 ... CuốiCuối

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
  •