รวมข้อมูลที่กระจัดกระจายมาเป็น Database

? การ Import ข้อมูลจากระบบอื่นเข้ามาใน Excel หรือแม้กระทั่งการดาวน์โหลดข้อมูลออกมาจากระบบหลักของกิจการ ในบางครั้งกลับพบว่าข้อมูลที่ได้มานั้นมีความไม่เป็นระเบียบ เช่นมีบรรทัดทัดว่าง มีคอลัมน์ว่างเกินความต้องการ หรือข้อมูลกระจายเป็นกลุ่ม ๆ ?

Video ด้านล่างนี้แสดงการใช้ VBA รวมรวมข้อมูลที่กระจัดกระจายเป็นกลุ่ม ๆ ในหลาย ๆ พื้นที่มาเรียงใหม่ให้เป็น Database พร้อมที่จะใช้ทำรายงาน สามารถทำซ้ำได้ตามต้องการ กรณีที่เราทำซ้ำด้วยข้อมูลที่ได้รับข้อมาใหม่ โปรแกรมจะมีการ Clear ข้อมูลเดิมใน Database ทิ้งไปก่อนแล้วนำข้อมูลล่าสุดมาเรียงให้ใหม่ด้วย Code ตามด้านล่าง ?

Sub CollectData()
    Dim rng As Range
    With Sheets("Sheet2")
        .UsedRange.ClearContents
        .Range("a1:c1").Value = Array("Prd", "Qty", "Amt")
        For Each rng In Sheets("Sheet1").UsedRange.SpecialCells( _
            xlCellTypeConstants).Areas
            .Range("a" & .Rows.Count).End(xlUp).Offset(1, 0) _
                .Resize(rng.Rows.Count - 1, 3).Value = _
                rng.Offset(1, 0).Resize(rng.Rows.Count - 1, 3).Value
        Next rng
    End With
End Sub

Video แสดงการรวมข้อมูลที่กระจัดกระจายมาเป็น Database

Scroll to Top