iT邦幫忙

0

VBA CHART折線圖中如何與需要位置加入特殊符號"/"、"//"、"X"?

vba
  • 分享至 

  • xImage

請問如何在折線圖中加入特殊符號"/"、"//"、"X"?!!
頻率 125 250 500 750 1000 1500 2000 3000 4000 6000 8000
資料1 25 10 30 20 40 35 25 30 20 5 25
資料2 35 10 40 30 20 35 25 15
資料3 / / /
資料4 // /
資料5
-20
-15
-10
-5
0 X
5
10 X
15 X X
20 X
25
30
35
40
45
50
55
60
65
70
75
80
85
90
X座標為頻率(125到8000)Y座標為分貝(-20到90)資料3標示在Y座標-20,資料4標示在Y座標90位置,X資料則依(X Y)座標而定。請問VBA折線圖要如何把特殊符號加入?

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

1
wdchiang
iT邦新手 2 級 ‧ 2023-09-22 05:32:08

ChatGPT 回覆,參考一下:

在VBA中,您可以使用Chart物件和Series物件來操作折線圖中的資料點,並向需要的位置添加特殊符號,如"/"、"//"和"X"。以下是一些示例代碼,說明如何在Excel中使用VBA實現這些操作:

vba
Copy code
Sub 在圖表中加入特殊符號()
Dim ws As Worksheet
Dim chartObj As ChartObject
Dim series As Series

' 指定工作表
Set ws = ThisWorkbook.Worksheets("工作表1") ' 请将 "工作表1" 替换为您的工作表名称

' 指定要操作的圖表物件
Set chartObj = ws.ChartObjects("圖表 1") ' 请将 "圖表 1" 替换为您的圖表物件名称

' 指定要操作的資料系列
Set series = chartObj.Chart.SeriesCollection(1) ' 请根据您的圖表选择正确的資料系列

' 在特定位置添加"/"、"//"和"X"符號
' 例如,在第3個資料點後添加"/",在第5個資料點後添加"//",在第7個資料點後添加"X"

' 在第3個資料點後添加"/"
series.Points(3).DataLabel.Text = series.Points(3).DataLabel.Text & " /"

' 在第5個資料點後添加"//"
series.Points(5).DataLabel.Text = series.Points(5).DataLabel.Text & " //"

' 在第7個資料點後添加"X"
series.Points(7).DataLabel.Text = series.Points(7).DataLabel.Text & " X"

End Sub

請注意,上述程式碼中的 "工作表1" 和 "圖表 1" 需要根據您的實際工作簿和圖表物件名稱進行修改。此外,您可以根據需要自定義在哪些資料點後添加特殊符號以及使用的符號是什麼。在示例中,我們是在第3、第5和第7個資料點後添加了不同的符號。

lin520 iT邦新手 4 級 ‧ 2023-09-22 09:36:40 檢舉

我試試!謝謝!

lin520 iT邦新手 4 級 ‧ 2023-09-23 15:52:10 檢舉

我試的經驗無法運作,ChatGpt會讓你頭昏眼花!我尋求真正的有經驗的高手,提示該如何解決問題?

0
海綿寶寶
iT邦大神 1 級 ‧ 2023-09-29 15:07:04

如果你是要類似下圖中黃色區域的效果
https://ithelp.ithome.com.tw/upload/images/20230929/20001787UzG21tYaLn.png
可以參考Excel 圖表 自訂標記
and
對 Excel 來說,資料是資料,圖表的呈現是另一回事
不能拿特殊符號去讓 Excel 製作圖表

坦白說
我完全看不懂你的問題

lin520 iT邦新手 4 級 ‧ 2023-09-30 10:26:44 檢舉

抱歉!我的問題表達得不夠清楚,我用需求來說明可能比較能理解。目的:我想記錄聽力測試者的聽力,X座標代表頻率(125到8000),Y座標代表分貝,(-20到90),資料1=測試者透過空氣傳導所聽到的分貝資料,資料2=測試者透過骨頭震動聽到的分貝資料,資料3=分辨聲音高低的能力,若出現錯誤,在該頻率上紀錄"/"此標示放在Y座標-20分貝位置上,資料4=骨導測試錯誤紀錄,"/"或"//",此標示放在Y座標90分貝位置上,以上資料每個頻率(125到8000)都只有一個錯誤就可以清楚表達。所以可以使用一列(Row)來紀錄資料。而資料5=氣導測試錯誤紀錄"X",錯誤就不只一個,可能125頻率來說,在20、25、30分貝上都出現錯誤,就會有3個"X"標示在125頻率於20、25、30位置標示,所以會需要X座標Y座標來表示其正確位置,(X,Y)=(125,20)、(125,25)、(125,30)。我也試過使用ChatGPT,但是都沒有辦法完成上述需求!所以請求大神看看能否提示方向。謝謝大神幫忙!

我要發表回答

立即登入回答