返回列表 上一主題 發帖

[發問] 請問如何使圖表上在0點上下的指標顏色分別以不同顏色標示?

Thanks a lot!

TOP

回復 10# alexliou

Dear  alexliou

可否將範例檔案上傳供下載研究。
peter460191

TOP

回復 12# peter460191

Put_Call_Ratio.zip (85.48 KB)
法意部落格裡每日指標追蹤裡有一個Put_call Ratio
我嘗試用Excel VBA來製作它
Put_call ratio 如果大於1 則長條圖位於x軸上方,顯示為藍色,
Put_call ratio 如果小於1 則長條圖位於x軸下方, 顯示為紅色
Alex

TOP

感謝 alexliou 分享程式
但我用excel2007執行到
        .SeriesCollection(2).InvertColor = RGB(255, 124, 128)
這行就出現執行階段錯誤:438問題
請問 怎解

TOP

本帖最後由 alexliou 於 2012-5-12 06:28 編輯

回復 14# f3202
InvertColor是Series 物件在 Excel  2010版本中 的新增屬性
Excel 2007無法使用
Alex

TOP

回復 15# alexliou

謝謝 alexliou 版大指教
2007也可作出一般的圖
另外請教折線圖可否調整顏色大小
謝謝

TOP

本帖最後由 alexliou 於 2012-5-13 09:07 編輯

回復 14# f3202
在程式中處理零軸上下顏色不同,是靠以下這兩行Code
  .SeriesCollection(2).InvertIfNegative = True
  .SeriesCollection(2).InvertColor = RGB(255, 124, 128)
其中InvertIfNegative屬性 設為True, 會讓Excel以補色顯示對應於負數之資料點中的圖樣
InvertColor 則是去設定數列中負資料點的填滿色彩
雖然InvertColor 是Excel 2010的新功能
但 InvertIfNegative 在Excel 2010以前就有了
所以只要 Mark掉有InverColor那一行Code
程式仍可運作, 只是色彩無法讓User自行控制
所以負數的資料點都會呈現黑色 (美觀上遜色了點)
Alex

TOP

本帖最後由 alexliou 於 2012-5-13 09:15 編輯

回復 16# f3202
折線圖並沒直接的辦法來設定不同的顏色
也就是說  InvertIfNegative 與折線圖合用時並不會發揮作用
(線段是連接兩點, InvertIfNegtative 是針對"點")

若要處理折線圖在不同的範圍(可以是X軸, 也可以是不同的Y值)顯示不同的顏色
一般解法是把一個資料數列根據範圍拆成不同的數列
每個序列賦予不同的顏色

PS. 以上說得很簡單 但Implement起來會有新的問題發生
假設第一點的Y值是 10, 第二點的Y值是-5
你想要在0以上的線段和0以下的線段呈現不同的顏色
這樣必需人為插入一點0
如有興趣  可以再討論
Alex

TOP

回復 17# alexliou
謝謝 alexliou 版大教學
2007弄出來了
   雖然美感上差些    將就囉

TOP

        靜思自在 : 生氣,就是拿別人的過錯來懲罰自己。
返回列表 上一主題