Excel VBA อัพเดทข้อมูลกราฟ


0

ฉันมีแผนภูมิหลายชุดที่อ้างอิงชุดข้อมูลหนึ่งชุด แผนภูมิแต่ละชุดมีจำนวนชุดที่แตกต่างกัน แต่ละชุดอ้างถึงแถวหนึ่งของชุดข้อมูลสำหรับคอลัมน์จำนวนหนึ่ง (เช่น A1: Z1) ในระหว่างการอัปเดตฉันต้องการเปลี่ยนข้อมูลสำหรับทุกซีรี่ส์ตาม 1 คอลัมน์ (เช่น A1: Z1 - & gt; B1: AA1) ตัวเลือกคอลัมน์สำหรับทุกซีรี่ส์จะเหมือนกัน

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

ปัญหาของฉันอยู่ที่การดึงหมายเลขแถว ฉันพยายามทำ

foo = ActiveChart.SeriesCollection(1).Values

ด้วยความตั้งใจที่จะดึงหมายเลขแถวออกจากสตริง (ซึ่งยอมรับว่าไม่สวยงาม) แต่คุณสมบัติค่าไม่ส่งคืนสตริงแม้ว่าเมื่อตั้งค่ามันจะใช้เวลาในสตริงเช่น:

ActiveChart.SeriesCollection(1).Values = "=Data!$A$1:$Z$1"

วิธีการที่ดีที่สุดจะเป็นอย่างไร ฉันควรใช้ช่วงที่ตั้งชื่อแบบไดนามิกสำหรับแต่ละซีรี่ส์หรือไม่

ขอบคุณ.


คุณเคยลอง Named Ranges แล้วหรือยัง? ดูเหมือนว่าจะง่ายกว่าการจัดการกับ VBA นอกจากนี้ข้อมูลของคุณเป็นตาราง Excel หรือเพียงแค่เติมเซลล์หรือไม่
dav

ฉันกำลังมองหาช่วงชื่อแบบไดนามิกในขณะนี้ น่าเสียดายที่ข้อมูลของฉันไม่ใช่ตารางเนื่องจากส่วนหัวอยู่ในคอลัมน์ A แทนที่จะเป็นแถว 1 และฉันต้องการเก็บข้อมูลในลักษณะนั้น
csg

จัดการเพื่อละทิ้ง VBA และใช้ช่วงที่ตั้งชื่อแบบไดนามิกแทน ขอบคุณ
csg

1
เยี่ยมมากดีใจที่คุณได้ทำงาน คุณควรเพิ่มสิ่งที่คุณทำไว้เป็นคำตอบและทำเครื่องหมายให้เป็นที่ยอมรับเพื่อให้คนอื่นที่พบคำถามนี้สามารถรับแนวคิดในการแก้ปัญหาที่คล้ายกัน
dav
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.