我需要使用從兩個單元格建立字串的公式在 Excel 圖表中建立資料標籤,兩個單元格之間有換行符。
這適用於單元格公式:
=A1 & CHAR(10) & B1
這在 VBA 中可以工作
=A1 & Chr(10) & B1
正如這篇文章所示:http://www.ozgrid.com/forum/showthread.php?t=40644但這些方法都不適用於資料標籤。有任何想法嗎?
答案1
在 VBA 中你可以使用這個:
Dim str as String
str = Range("A").Value & vbCrlf & Range("B").Value
vbCrlf 會給你換行符...
答案2
這在 VBA 中對我有用:
Sheet1.ChartObjects(1).Chart.SeriesCollection(1).Name = "a" & vbCr & "b"
如前所述,這適用於一個公式:
=DATASERIES(Sheet1!$E$1,Sheet1!$A$2:$A$4,Sheet1!$B$2:$B$4,1)
E1 = "a" & CHAR(10) & "b"
E1 必須設定自動換行。
DATASERIES 是您選擇系列後在公式編輯部分中看到的內容。
答案3
這就是我讓它發揮作用的方式。
=A1 & CHAR(10) & B1
步驟 1:使用儲存格中的公式建立啟用自動換行的新列C1
,然後根據需要向下拖曳
步驟 2:執行以下 VBA 程式碼將每個資料標籤設定為指向正確的儲存格
Sub SetDataLabels()
Dim ChartName As String
ChartName = "My Chart's Name"
With ActiveSheet.ChartObjects(ChartName).Chart
Dim Series As Integer
Series = 4
With .SeriesCollection(Series)
Dim currentPoint As Integer
For currentPoint = 1 To .Points.Count
.Points(currentPoint).DataLabel.Text = Range("C" & currentPoint).Text
Next currentPoint
End With
End With
End Sub