Page 1 of 1

รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Mon May 21, 2012 1:40 pm
by Palmib
จากไฟล์ที่แนบมานะคะ คืออยากทราบว่าถ้าสมมติว่าเพิ่ม
ข้อมูล week 47 ขึ้นมา หรือเพิ่ม Gramload HD_5
ขึ้นมาค่ะ แล้วให้กราฟมีจุดของข้อมูลใหม่ที่เพิ่มขึ้นมาด้วย
นี่ต้องทำยังไงหรอคะ รบกวนหน่อยนะคะ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Mon May 21, 2012 1:47 pm
by Palmib
ไฟล์นี้ๆค่ะ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Mon May 21, 2012 4:58 pm
by bank9597
:tt: อยากจะช่วยตอบเหมือนกันครับ แต่ไม่ถนัดเรื่องกราฟเอาเสียเลย คงต้องรออาจารย์มาตอบให้ครับ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Mon May 21, 2012 7:38 pm
by snasui
:D ต้องให้ชื่อไว้กับช่วงข้อมูลที่นำมาทำกราฟ ลองศึกษาจาก Link นี้ครับ http://www.snasui.com/viewtopic.php?f=3&t=1356

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Tue May 22, 2012 8:17 am
by Palmib
ขอบคุณมากนะคะ เดี๋ยวหนูขอศึกษาก่อน
แล้วถ้าสงสัยจะมาถามอีกรอบนะคะ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Tue May 22, 2012 9:25 am
by Palmib
ขอโทษนะคะ หนูดูแล้วหนูไม่เข้าใจค่ะ
คือหนูต้องการให้แกน x เป็น week 40 , week 41 , week 42 , week 43 ...
ไปเรื่อยๆค่ะ แล้วเส้นกราฟก็มีตามจำนวนของ Gramload HD_0 , Gramload HD_1 แต่เส้นกราฟนี่ไม่ใช่ปัญหาค่ะ
เพราะมันจำกัดได้ แต่ week ค่ะ คือถ้าหนูเพิ่มข้อมูลของ week ใหม่เข้ามาเส้นกราฟก็จะยาวขึ้น

จากลิ้งค์ที่อาจารย์ให้มา หนูไม่เข้าใจตรงการกำนหดชื่อตัวแปรค่ะ
ว่าถ้าข้อมูลอยู่ในชีทเดียวกันจะต้องทำยังไง

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Tue May 22, 2012 11:19 am
by snasui
:D ถ้าเช่นนั้นลองศึกษาจากเวบของ Peltier ตาม Link นี้ครับ http://peltiertech.com/Excel/Charts/Dyn ... hart1.html ติดตรงไหนสามารถถามมาได้ครับ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Fri May 25, 2012 9:22 am
by Palmib
ลองทำดูแล้วค่ะ ขอบคุณมากนะคะ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Wed May 30, 2012 10:50 am
by Palmib
จากตัวอย่างของไฟล์ที่ส่งไปนะคะ รบกวนถามว่าถ้าอยากได้ผลลัพธ์ดังภาพ
คืออยากได้เส้น เหมือนเส้นกำกับลิมิตของกราฟเส้นอื่นๆว่าอยู่ในช่วงของ 0 ถึง 10
ไม่เกินนี้ค่ะ อยากทราบว่าต้องกำหนดค่าตรงไหนหรอคะ หรือต้องทำยังไงหรอคะ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Wed May 30, 2012 10:56 am
by snasui
:D สามารถเพิ่มข้อมูลสำหรัทำ Min, Max เข้ามาอีกสองข้อมูลแล้ว Add เข้ามาในกราฟครับ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Wed May 30, 2012 11:05 am
by Palmib
รบกวนถามได้ไหมคะ ว่าทำยังไง

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Wed May 30, 2012 11:15 am
by snasui
:D การเพิ่มเส้นกราฟอื่น ๆ ทำอย่างไรก็ทำเช่นเดียวกันครับ แต่จะต้องเพิ่มข้อมูลที่เป็น Min และ Max ตามค่าที่กำหนดเข้ามาก่อนครับ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Tue Jun 05, 2012 10:05 am
by Palmib
ถ้าหนู run macro ที่ชื่อ mean มันก็จะรันไปจนถึง row สุดท้ายของ
คอลัมน์ AP:AS ค่ะ แล้วกราฟมันก็จะออกมาแปลกๆค่ะ หนูควรแก้ไขอย่างไรดีคะ
ถ้า AP:AS จะมีค่าก็ต่อเมื่อ AO ไม่ใช่ cell ว่างอยู่หน่ะค่ะ

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Tue Jun 05, 2012 1:09 pm
by snasui
:D ลองปรับ Code difinePSA เป็นตามด้านล่างครับ

Code: Select all

Public Sub definePSA()
    Dim LastRow As Long
    With Sheets("Trend_PSA")
        LastRow = .Range("A" & Rows.Count).End(xlUp).Row
        'UCL PSA
            .Range("AP2:AP" & LastRow).Value = "=IF(RC[-1]<>"""",15,"""")"
        'LCL
            .Range("AQ2:AQ" & LastRow).Value = "=IF(RC[-2]<>"""",12,"""")"
        'USL
            .Range("AR2:AR" & LastRow).Value = "=IF(RC[-3]<>"""",0,"""")"
        'LSL
        .Range("AS2:AS" & LastRow).Value = "=IF(RC[-4]<>"""",-2,"""")"
        
        .Range("AP1").Value = "UCL"
        .Range("AQ1").Value = "LCL"
        .Range("AR1").Value = "USL"
        .Range("AS1").Value = "LSL"
    End With

    Range("AP1:AS1").Select
    Selection.Font.Bold = True
    With Selection
        .HorizontalAlignment = xlCenter
        .VerticalAlignment = xlBottom
    End With
    Range("A2").Select

    ActiveWorkbook.Names.Add Name:="mean0", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C3,1,0,COUNTA(Trend_PSA!C3)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean1", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C7,1,0,COUNTA(Trend_PSA!C7)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean2", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C11,1,0,COUNTA(Trend_PSA!C11)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean3", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C15,1,0,COUNTA(Trend_PSA!C15)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean4", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C19,1,0,COUNTA(Trend_PSA!C19)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean5", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C23,1,0,COUNTA(Trend_PSA!C23)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean6", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C27,1,0,COUNTA(Trend_PSA!C27)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean7", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C31,1,0,COUNTA(Trend_PSA!C31)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean8", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C35,1,0,COUNTA(Trend_PSA!C35)-1,1)"
    ActiveWorkbook.Names.Add Name:="mean9", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C39,1,0,COUNTA(Trend_PSA!C39)-1,1)"

    ActiveWorkbook.Names.Add Name:="st0", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C4,1,0,COUNTA(Trend_PSA!C4)-1,1)"
    ActiveWorkbook.Names.Add Name:="st1", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C8,1,0,COUNTA(Trend_PSA!C8)-1,1)"
    ActiveWorkbook.Names.Add Name:="st2", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C12,1,0,COUNTA(Trend_PSA!C12)-1,1)"
    ActiveWorkbook.Names.Add Name:="st3", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C16,1,0,COUNTA(Trend_PSA!C16)-1,1)"
    ActiveWorkbook.Names.Add Name:="st4", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C20,1,0,COUNTA(Trend_PSA!C20)-1,1)"
    ActiveWorkbook.Names.Add Name:="st5", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C24,1,0,COUNTA(Trend_PSA!C24)-1,1)"
    ActiveWorkbook.Names.Add Name:="st6", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C28,1,0,COUNTA(Trend_PSA!C28)-1,1)"
    ActiveWorkbook.Names.Add Name:="st7", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C32,1,0,COUNTA(Trend_PSA!C32)-1,1)"
    ActiveWorkbook.Names.Add Name:="st8", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C36,1,0,COUNTA(Trend_PSA!C36)-1,1)"
    ActiveWorkbook.Names.Add Name:="st9", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C40,1,0,COUNTA(Trend_PSA!C40)-1,1)"
        
    ActiveWorkbook.Names.Add Name:="cpk0", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C5,1,0,COUNTA(Trend_PSA!C5)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk1", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C9,1,0,COUNTA(Trend_PSA!C9)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk2", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C13,1,0,COUNTA(Trend_PSA!C13)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk3", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C17,1,0,COUNTA(Trend_PSA!C17)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk4", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C21,1,0,COUNTA(Trend_PSA!C21)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk5", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C25,1,0,COUNTA(Trend_PSA!C25)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk6", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C29,1,0,COUNTA(Trend_PSA!C29)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk7", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C33,1,0,COUNTA(Trend_PSA!C33)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk8", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C37,1,0,COUNTA(Trend_PSA!C37)-1,1)"
    ActiveWorkbook.Names.Add Name:="cpk9", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C41,1,0,COUNTA(Trend_PSA!C41)-1,1)"
        
    ActiveWorkbook.Names.Add Name:="week", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C1,1,0,COUNTA(Trend_PSA!C1),1)"
        
    ActiveWorkbook.Names.Add Name:="UCL", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C42,1,0,COUNTA(Trend_PSA!C1),1)"
    ActiveWorkbook.Names.Add Name:="LCL", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C43,1,0,COUNTA(Trend_PSA!C1),1)"
    ActiveWorkbook.Names.Add Name:="USL", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C44,1,0,COUNTA(Trend_PSA!C1),1)"
    ActiveWorkbook.Names.Add Name:="LSL", RefersToR1C1:= _
        "=OFFSET(Trend_PSA!R1C45,1,0,COUNTA(Trend_PSA!C1),1)"
End Sub

Re: รบกวนถามเรื่องเพิ่มข้อมูลแล้วเพิ่มจุดในกราฟค่ะ

Posted: Tue Jun 05, 2012 1:56 pm
by Palmib
ขอบคุณมากๆค่ะ