:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser
🪷 คำแสดงเจตนา
ขอผลแห่งการให้ความรู้นี้ จงกลับไปยังผู้ที่เป็นเจ้าของเดิม แม้ข้าพเจ้าจะไม่รู้จักท่านก็ตาม ขอให้แสงแห่งปัญญาที่ท่านเคยจุดไว้ ได้กลับไปเติมเต็มชีวิตของท่านอีกครั้ง และขอให้เจตนาของข้าพเจ้าเป็นการคืนความดีอย่างสงบ

อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#1

Post by Palmib »

จากไฟล์ที่แนบมานะคะ คืออยากสร้างกราฟแบบนั้นอ่ะค่ะ
แต่ทำไม่เป็น ไม่รู้ว่าสต้องเลือกแบบไหน
เลยอยากขอความช่วยเหลือค่ะ ใครทำได้
ช่วยกรุณาแนะนำทีนะคะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#2

Post by snasui »

:D จากไฟล์ที่แนบมาพบว่ากราฟนี้ใช้ข้อมูลจากไฟล์ 10head.xls ควรแนบไฟล์นั้นหรือ Save ไฟล์ตัวอย่างมาจากไฟล์นั้น จะไม่ได้ต้องเสียเวลาสร้างกราฟเลียนแบบ คิดว่าสะดวกในการแนะนำขั้นตอนการทำมากกว่าครับ
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#3

Post by Palmib »

ไฟล์นี้ใช้ได้ไหมคะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#4

Post by snasui »

:D ลองดูวิธีการตามภาพด้านล่างและทำซ้ำตั้งแต่ภาพที่ 3 กับข้อมูลอื่น ๆ ตามต้องการ กรณีต้องการเปลี่ยนให้เป็นกราฟเส้นให้คลิกขวาลงบนแท่งกราฟแล้วเลือก Change series type ครับ
You do not have the required permissions to view the files attached to this post.
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#6

Post by Palmib »

Code: Select all

Public Sub Graph_RSA(wn)
    
    Charts.Add
    ActiveChart.ChartType = xlColumnStacked
    ActiveChart.SetSourceData Source:=Sheets("RSA_KPOV_" & wn).Range("W15"), _
        PlotBy:=xlColumns
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).XValues = "='XXXXX'!R5C3:R14C3"
    ActiveChart.SeriesCollection(1).Values = "='XXXXX'!R18C5:R27C5"
    ActiveChart.SeriesCollection(1).Name = "='XXXXX'!R4C5"
    ActiveChart.SeriesCollection(2).XValues = "='XXXXX'!R5C3:R14C3"
    ActiveChart.SeriesCollection(2).Values = "='XXXXX'!R18C6:R27C6"
    ActiveChart.SeriesCollection(2).Name = "='XXXXX'!R4C6"
    ActiveChart.SeriesCollection(3).XValues = "='XXXXX'!R5C3:R14C3"
    ActiveChart.SeriesCollection(3).Values = "='XXXXX'!R5C7:R14C7"
    ActiveChart.SeriesCollection(3).Name = "='XXXXX'!R4C2:R17C2"
    ActiveChart.SeriesCollection(4).Values = "='XXXXX'!R18C7:R27C7"
    ActiveChart.SeriesCollection(4).Name = "='XXXXX'!R18C2:R30C2"
    ActiveChart.Location Where:=xlLocationAsObject, Name:="RSA_KPIV chart"
    With ActiveChart
        .HasTitle = True
        .ChartTitle.Characters.Text = "RSA"
        .Axes(xlCategory, xlPrimary).HasTitle = False
        .Axes(xlValue, xlPrimary).HasTitle = False
    End With
    ActiveChart.SeriesCollection(4).Select
    ActiveChart.SeriesCollection(4).ChartType = xlLineMarkers
    ActiveChart.SeriesCollection(3).Select
    ActiveChart.SeriesCollection(3).ChartType = xlLineMarkers
    ActiveChart.SeriesCollection(4).Select
    With Selection.Border
        .ColorIndex = 3
        .Weight = xlMedium
        .LineStyle = xlContinuous
    End With
    With Selection
        .MarkerBackgroundColorIndex = 3
        .MarkerForegroundColorIndex = 3
        .MarkerStyle = xlTriangle
        .Smooth = False
        .MarkerSize = 7
        .Shadow = False
    End With
    ActiveChart.SeriesCollection(3).Select
    With Selection.Border
        .ColorIndex = 1
        .Weight = xlMedium
        .LineStyle = xlContinuous
    End With
    With Selection
        .MarkerBackgroundColorIndex = 1
        .MarkerForegroundColorIndex = 1
        .MarkerStyle = xlDiamond
        .Smooth = False
        .MarkerSize = 5
        .Shadow = False
    End With
    ActiveChart.SeriesCollection(1).Select
    With Selection.Border
        .Weight = xlThin
        .LineStyle = xlAutomatic
    End With
    Selection.Shadow = False
    Selection.InvertIfNegative = False
    With Selection.Interior
        .ColorIndex = 7
        .Pattern = xlSolid
    End With
    ActiveChart.SeriesCollection(2).Select
    With Selection.Border
        .Weight = xlThin
        .LineStyle = xlAutomatic
    End With
    Selection.Shadow = False
    Selection.InvertIfNegative = False
    With Selection.Interior
        .ColorIndex = 4
        .Pattern = xlSolid
    End With
    ActiveChart.Axes(xlValue).MajorGridlines.Select
    With ActiveChart.Axes(xlValue)
        .MinimumScale = -0.5
        .MaximumScale = 1
        .MinorUnit = 0.05
        .MajorUnit = 0.1
        .Crosses = xlCustom
        .CrossesAt = 0
        .ReversePlotOrder = False
        .ScaleType = xlLinear
        .DisplayUnit = xlNone
    End With

End Sub
จากโค้ดข้างบนนะคะ ถ้าค่า wn เป็น integer นะคะ
แล้วหนู part ค่าเข้ามา เพื่อเป็นการกำหนดให้เป็นชื่อ sheet ค่ะ
แล้วหนูต้องกำหนดค่า XXXXX เป็นอะไรหรอคะ??
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#7

Post by snasui »

:D 'XXXXX' ใช้แทนชีทใดก็ใส่ชื่อชีทนั้นครับ

part น่าจะเป็น pass คือการส่งค่ามาจาก Procedure อื่น ๆ
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#8

Post by Palmib »

อ้อ ใช่ๆค่ะ พิมพ์ผิดๆ แต่หนูกำหนดค่าเป็นแบบนี้ค่ะ

ActiveChart.SeriesCollection(1).XValues = "=' RSA_KPOV_'&wn !R5C3:R14C3"

แล้วมันไม่ได้ค่ะ มันขึ้น Run-time error '1004'
Unable to set the XValues property of the Series class
ค่ะ หนูควรแก้ยังไงหรอคะ?
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#9

Post by snasui »

:D สามารถแก้เป็นด้านล่างได้ครับ

ActiveChart.SeriesCollection(1).XValues = "=' RSA_KPOV_" & wn & "'!R5C3:R14C3"
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#10

Post by Palmib »

มันก็ยัง error อยู่เลยค่ะ
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#11

Post by snasui »

:lol: ควรส่งไฟล์ตัวอย่างมาด้วยครับจะได้ช่วยทดสอบได้

Error ฟ้องว่าอย่างไรควรแจ้งมาด้วย ตามหลักการเขียน Code เพื่ออ้างถึงชีทและเซลล์ตามที่ตอบไปนั้นผมเห็นว่าถูกต้องแล้ว ยกเว้นแจ้งมาขาดหรือเกินไปจากนั้นครับ
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#12

Post by Palmib »

หนู รัน Procedure exam ก่อนค่ะเพื่อสร้างชีทที่เป็นแบบที่แนบไป
แล้ว call Graph_RSA เพื่อสร้างกราฟค่ะ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#13

Post by snasui »

:D เปลี่ยน Code เป็นตามด้านล่างครับ สังเกตว่าลบวรรคระหว่างเครื่องหมาย ' และ RSA_KPOV_ ออกไป

Code: Select all

ActiveChart.SeriesCollection(1).XValues = "='RSA_KPOV_" & wn & "'!R5C3:R14C3"
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#14

Post by Palmib »

ทำได้แล้วค่ะ ขอบคุณนะคะ : ))
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#15

Post by Palmib »

หนูรบกวนถามค่ะ ว่า ถ้าสมมติหนูอยากกำหนดให้กราฟ ที่สร้างขึ้นมา
อยู่ตรงเซลล์ที่หนูต้องการ หนูต้องกำหนดค่าตรงไหนหรอคะ
ถ้าโค้ดของหนูเป็นแบบนี้

Code: Select all

    Charts.Add
    ActiveChart.ChartType = xlColumnStacked
 '   ActiveChart.SetSourceData Source:=Sheets("PSA_KPOV chart_" & wn).Range("N4"), _
        PlotBy:=xlColumns
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).XValues = "='PSA_KPOV chart_" & wn & "'!R5C3:R14C3"
    ActiveChart.SeriesCollection(1).Values = "='PSA_KPOV chart_" & wn & "'!R51C9:R60C9"
    ActiveChart.SeriesCollection(1).Name = "='PSA_KPOV chart_" & wn & "'!R4C5"
    ActiveChart.SeriesCollection(2).Values = "='PSA_KPOV chart_" & wn & "'!R51C10:R60C10"
    ActiveChart.SeriesCollection(2).Name = "='PSA_KPOV chart_" & wn & "'!R4C6"
    ActiveChart.SeriesCollection(3).Values = "='PSA_KPOV chart_" & wn & "'!R51C11:R60C11"
    ActiveChart.SeriesCollection(3).Name = "='PSA_KPOV chart_" & wn & "'!R4C7"
    ActiveChart.SeriesCollection(4).Values = "='PSA_KPOV chart_" & wn & "'!R5C12:R14C12"
    ActiveChart.SeriesCollection(4).Name = "='PSA_KPOV chart_" & wn & "'!R4C2"
    ActiveChart.SeriesCollection(5).Values = "='PSA_KPOV chart_" & wn & "'!R51C12:R60C12"
    ActiveChart.SeriesCollection(5).Name = "='PSA_KPOV chart_" & wn & "'!R18C2"
    ActiveChart.Location Where:=xlLocationAsObject, Name:="PSA_KPOV chart_" & wn
    With ActiveChart
        .HasTitle = True
        .ChartTitle.Characters.Text = "Muskie PSA Sigma Contributions"
        .Axes(xlCategory, xlPrimary).HasTitle = False
        .Axes(xlValue, xlPrimary).HasTitle = False
    End With
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#16

Post by snasui »

:D สามารถกำหนดที่ With ActiveChart ได้ครับ เป็นเช่น

Code: Select all

With ActiveChart
    .HasTitle = True
    .ChartTitle.Characters.Text = "Muskie PSA Sigma Contributions"
    .Axes(xlCategory, xlPrimary).HasTitle = False
    .Axes(xlValue, xlPrimary).HasTitle = False
    .Left = Worksheets("Sheet1").Range("D5").Left
    .Top = Worksheets("Sheet1").Range("D5").Top
    .Height = Worksheets("Sheet1").Range("D5:D15").Height
    .Width = Worksheets("Sheet1").Range("D5:I5").Width
End With
ส่วนจะกำหนดให้อยู่ในเซลล์ไหน สูงและกว้างเท่ากับกี่เซลล์สามารถเปลี่ยนใน Code ข้างบนได้เลยครับ
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#17

Post by Palmib »

ขอบคุณมากมากนะคะ : ))
Palmib
Member
Member
Posts: 44
Joined: Fri Apr 20, 2012 2:08 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#18

Post by Palmib »

เกิด error ค่ะ ขึ้นว่า

"Method or data member not found"
เกี่ยวกับว่าหนูใช้ excel 2000 หรือปล่าวคะ??
cruzz
Member
Member
Posts: 54
Joined: Thu Dec 23, 2010 1:07 pm

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#19

Post by cruzz »

แนบไฟล์มาด้วยจะดีมากเลยครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31178
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: อยากถามวิธีการสร้างกราฟให้เหมือนเอกสารที่แนบมาค่ะ

#20

Post by snasui »

Palmib wrote:เกิด error ค่ะ ขึ้นว่า

"Method or data member not found"
เกี่ยวกับว่าหนูใช้ excel 2000 หรือปล่าวคะ??
ไม่เกี่ยวกับ Version ครับ ที่ผมเขียนไปให้นั้นเป็นตัวอย่างว่าต้องการวางไว้ที่ชีทที่ชื่อว่า Sheet1 แต่หากชีทที่ใช้จริงชื่อว่าอะไรก็เปลี่ยนเป็นชื่อนั้น
cruzz wrote:แนบไฟล์มาด้วยจะดีมากเลยครับ
เห็นด้วยครับ ควรแนบไฟล์ตัวอย่างมาด้วยจะสะดวกในการตอบแบบอ้างอิงชีท เซลล์ที่ใช้จริง
Post Reply