สีของแผนภูมิจากเซลล์ที่มีข้อมูล

การกำหนดปัญหา

ฉันต้องการให้คอลัมน์บนฮิสโตแกรม (หรือสไลซ์บนแผนภูมิวงกลม ฯลฯ) มีสีที่ใช้ในการเติมเซลล์ที่เกี่ยวข้องด้วยข้อมูลต้นฉบับโดยอัตโนมัติ:

เมื่อคาดการณ์ถึงเสียงร้องที่ประหลาดใจและไม่พอใจของสหายแต่ละคน ควรสังเกตว่าแน่นอนว่าสีของการเติมในไดอะแกรมสามารถเปลี่ยนแปลงได้ด้วยตนเอง (คลิกขวาที่คอลัมน์ – รูปแบบจุด/อนุกรม (จัดรูปแบบจุดข้อมูล/อนุกรม) ฯลฯ - ไม่มีใครโต้แย้ง แต่ในทางปฏิบัติ มีหลายสถานการณ์ที่ทำได้ง่ายกว่าและสะดวกกว่าในเซลล์ที่มีข้อมูลโดยตรง จากนั้นจึงควรทาสีแผนภูมิใหม่โดยอัตโนมัติ ตัวอย่างเช่น ลองตั้งค่าการเติมตามภูมิภาคสำหรับคอลัมน์ในแผนภูมินี้:

ฉันคิดว่าคุณคงเข้าใจแล้วใช่ไหม

Solution

ไม่มีอะไรนอกจากมาโครที่สามารถทำได้ เราจึงเปิด โปรแกรมแก้ไข Visual Basic จากแท็บ ผู้พัฒนา (ผู้พัฒนา — ตัวแก้ไข Visual Basic) หรือกดแป้นพิมพ์ลัด Alt + F11, แทรกโมดูลเปล่าใหม่ผ่านเมนู แทรก – โมดูล และคัดลอกข้อความของมาโครดังกล่าวที่นั่น ซึ่งจะทำงานทั้งหมด:

Sub SetChartColorsFromDataCells() ถ้า TypeName(Selection) <> "ChartArea" จากนั้น MsgBox "Сначала выделите диаграмму!" ออกจาก Sub End ถ้า Set c = ActiveChart For j = 1 To c.SeriesCollection.Count f = c.SeriesCollection(j).Formula m = Split(f, ",") Set r = Range(m(2)) For i = 1 ถึง r.Cells.Count c.SeriesCollection(j).Points(i).Format.Fill.ForeColor.RGB = _ r.Cells(i).Interior.Color Next i Next j End Sub  

ตอนนี้คุณสามารถปิด Visual Basic และกลับสู่ Excel ได้แล้ว การใช้มาโครที่สร้างขึ้นนั้นง่ายมาก เลือกแผนภูมิ (พื้นที่แผนภูมิ ไม่ใช่พื้นที่การลงจุด ตารางหรือคอลัมน์!):

และเรียกใช้มาโครของเราด้วยปุ่ม แมโคร แถบ ผู้พัฒนา (ผู้พัฒนา — มาโคร) หรือด้วยแป้นพิมพ์ลัด Alt + F8. ในหน้าต่างเดียวกัน ในกรณีที่ใช้งานบ่อย คุณสามารถกำหนดแป้นพิมพ์ลัดให้กับมาโครได้โดยใช้ปุ่ม พารามิเตอร์ (ตัวเลือก).

PS

แมลงวันเดียวในครีมคือความเป็นไปไม่ได้ที่จะใช้ฟังก์ชั่นที่คล้ายกันสำหรับกรณีที่สีถูกกำหนดให้กับเซลล์ของแหล่งข้อมูลโดยใช้กฎการจัดรูปแบบตามเงื่อนไข ขออภัย Visual Basic ไม่มีเครื่องมือในตัวสำหรับอ่านสีเหล่านี้ แน่นอนว่ามี "ไม้ค้ำยัน" บางอย่าง แต่ก็ใช้ไม่ได้กับทุกกรณีและไม่ใช่ในทุกเวอร์ชัน

  • มาโครคืออะไร ใช้งานอย่างไร ตำแหน่งที่จะแทรกโค้ดแมโครใน Visual Basic
  • การจัดรูปแบบตามเงื่อนไขใน Excel 2007-2013
  • มีอะไรใหม่ในแผนภูมิใน Excel 2013

เขียนความเห็น