Mừng Sinh Nhật GPE 11: sáng 25/6 Hà Nội; 1/7 Huế/Đà Nẵng; Trưa 2/7 TPHCM

Gộp cột và Tách sheet

Thảo luận trong 'Lập Trình với Excel' bắt đầu bởi Hai Lúa Miền Tây, 23 Tháng hai 2009.

  1. Hai Lúa Miền Tây

    Hai Lúa Miền Tây Thành viên gạo cội Staff Member Super Moderator

    Chào các anh chị, mình có một vấn đề như sau:

    1.) Gộp cột: Mình có 1 Data có nhiều cột ngày và muốn dữ liệu cột ngày đó chuyển thành 1 cột.
    2.) Từ bảng gộp đó mình tách sang mỗi một ngày và một mã thành 1 sheet riêng biệt và ghi tên sheet tuong ứng với nó.

    Nhờ các anh chị giúp đỡ
    Cám ơn nhiều
     

    Các file đính kèm:

  2. ChanhTQ@

    ChanhTQ@ Thành viên già cỗi.

    Macro cho câu 1;

    PHP:
    Option Explicit

    Sub GopCot
    ()
     
    Dim lCol As BytelRw As Long
     Dim jJ 
    As ByteClls As RangeSh As Worksheet
     
     Set Sh 
    Sheets("GCot"):               Sh.Range("A2:E99").Clear
     Sheets
    ("Data").Select:                 lCol = [IV1].End(xlToLeft).Column
     lRw 
    = [A65500].End(xlUp).Row
     
    For jJ 3 To lCol
        
    For Each Clls In Range(Cells(2jJ), Cells(lRwjJ))
            
    With Sh.[A65500].End(xlUp)
                If 
    Clls.Value <> "" Then
                    
    .Offset(1).Value Cells(Clls.Row1).Value
                    
    .Offset(11).Value Cells(Clls.Row2).Value
                    
    .Offset(12).Value Clls.Value
                    
    .Offset(13).Value Cells(1jJ).Value
                End 
    If
            
    End With
        Next Clls
     Next jJ
    End Sub
    Câu hai, thông cảm, mình chưa thông cách làm.
     
  3. ndu96081631

    ndu96081631 Ăn cùng GPE, Ở cùng GPE, Sống cùng GPE Staff Member Super Moderator

    Em nghĩ chỉ cần 1 vòng lập thôi chứ Sư phụ nhỉ
    PHP:
    Private Sub CommandButton1_Click()
      
    Dim Clls As RangeAs Long
      Range
    ("A1").CurrentRegion.Offset(1).ClearContents
      
    For Each Clls In Sheet1.Range("A1").CurrentRegion.Offset(12).SpecialCells(2)
          
    Cells(2"A").Resize(, 2).Value Sheet1.Cells(Clls.Row1).Resize(, 2).Value
          Cells
    (2"C") = Sheet1.Cells(1Clls.Column)
          
    Cells(2"D") = Clls
          i 
    1
      Next
    End Sub
     
  4. Hai Lúa Miền Tây

    Hai Lúa Miền Tây Thành viên gạo cội Staff Member Super Moderator

    Cám ơn 2 anh đã giải quyết được câu 1;

    Câu 2 tạm thời em giải quyết là dùng dạng chuổi để ghép tên và ngày, sau đó tách sheet ra ra theo dạng mỗi một ngày và một mã thành 1 sheet riêng biệt và ghi tên sheet tuong ứng với nó.

    Có gì nhờ anh chị góp ý trong file đính kèm nhé
    Thân
     

    Các file đính kèm:

Chia sẻ trang này