Page 1 of 1

รบกวนสอบถามการดึงข้อมูลค่ะ

Posted: Thu Jun 23, 2011 9:39 am
by โดดเดี่ยวผู้น่ารัก
:) เรียนสอบถามค่ะ จากตัวอย่างที่ส่งมา Sheet ชื่อ Template จะเป็น Sheet ที่ชื่อข้อมูล Column ถูกต้อง (แต่ความจริงแล้วจะมีชื่อ Column ที่มากกว่าตัวอย่างค่ะ) และ Sheet ชื่อ Enhancement และ Incident เป็นข้อมูลดิบ ( แต่ความจริงแล้วจะมี Sheet ชื่อต่างๆมากกว่านี้)ค่ะ
การทำงานตอนนี้ก็คือ เราจะต้องมาตัดเอาข้อมูลจาก Sheet ที่เป็นข้อมูลดิบให้ได้ หัว Column และข้อมูลให้เหมือน Sheet ชื่อ Template พอจะมีวิธีแนะนำให้การทำงานง่ายกว่ามานั่งเลือกเอาหรือไม่ค่ะ รบกวนด้วยนะค่ะ ขอบพระคุณล่วงหน้าค่ะ
:idea:

Re: รบกวนสอบถามการดึงข้อมูลค่ะ

Posted: Thu Jun 23, 2011 7:02 pm
by snasui
:D ลองตาม Code ด้านล่างครับ

Code: Select all

Sub DelUnwatedColumns()
Dim wh As Worksheet, rs As Range
Dim r As Range, rAll As Range, count As Integer
Set rs = Worksheets("Template").Range("A1:L1")
For Each wh In Worksheets
    Set rAll = wh.Range("A1", wh.Range("IV1").End(xlToLeft))
    For Each r In rAll
        If Not IsNumeric(Application.Match(r, rs, 0)) Then
            r = ""
            count = count + 1
        End If
    Next r
    If count > 0 Then
        rAll.SpecialCells(xlCellTypeBlanks).EntireColumn.Delete
    End If
Next wh
End Sub
คอลัมน์ที่ได้อาจจะไม่จัดเรียงนะครับ แต่จะเหลือคอลัมน์ที่พบว่ามีอยู่ในชีท Template เว้นแต่จำนวนคอลัมน์ในชีทต่าง ๆ มีจำนวนน้อยกว่าคอลัมน์ในชีท Template ครับ

Re: รบกวนสอบถามการดึงข้อมูลค่ะ

Posted: Fri Jun 24, 2011 8:06 am
by โดดเดี่ยวผู้น่ารัก
:D ลองทดสอบแล้วค่ะ ได้ผลเป็นที่น่าพึงพอใจอย่างมากค่ะกับไฟล์ตัวอย่างที่แนบไปให้ แต่เมื่อนำ code ไปใช้กับไฟล์งานจริงปรากฎว่าเมื่อ Run แล้ว ข้อมูลโดนลบไปทั้งหมดค่ะ ไม่ทราบว่าเกิดจากสาเหตุใด รบกวนขอคำแนะนำเพิ่มเติมอีกครั้งนะค่ะ ขอบพระคุณที่ให้ความช่วยเหลือค่ะ :P

Re: รบกวนสอบถามการดึงข้อมูลค่ะ

Posted: Fri Jun 24, 2011 10:37 am
by snasui
:D ในไฟล์จริงมีชีทที่ชื่อ Template หรือเปล่าครับ

กรณีไม่มีลองเปลี่ยน Code ตรงคำว่า Template ด้านล่างให้ตรงกับชีทต้นแบบในไฟล์จริงครับ

Code: Select all

Set rs = Worksheets("Template").Range("A1:L1")

Re: รบกวนสอบถามการดึงข้อมูลค่ะ

Posted: Fri Jun 24, 2011 10:45 am
by โดดเดี่ยวผู้น่ารัก
มีชื่อ Tepmplate นะค่ะ :idea:

Re: รบกวนสอบถามการดึงข้อมูลค่ะ

Posted: Fri Jun 24, 2011 10:51 am
by snasui
:D ช่วยแนบไฟล์นั้นหลังจากลบข้อมูลสำคัญออกไปแล้วอีกรอบครับ :P

Re: รบกวนสอบถามการดึงข้อมูลค่ะ

Posted: Fri Jun 24, 2011 10:54 am
by โดดเดี่ยวผู้น่ารัก
ได้แล้วนะค่ะ สาเหตุน่าจะเกิดจากหนูเอา Sheet Template จากอีกไฟล์ ซึ่งไม่ใช่ไฟล์ตัวอย่างที่ส่งให้อาจารย์ แต่เมือ Copy Sheet จากไฟล์ตัวอย่างที่ส่งให้ มาไว้ใน File ที่ทำงานจริง สามารถ Run ได้เป็นปกติแล้วค่ะ ขอบพระคุณมากนะค่ะ