|
▼ここ さん:
>C列の様に99999という異常点を
>ダブルクリックすればグラフには反映しない様にする
ヒントです。
ダブルクリックは「オブジェクトの書式設定」の動作ですから、
それはだめ。
手動で、ある系列のある特定の点を選択する(Pointする)方法は
ご存知ですよね?
手動で、ある系列の異常点をPointしてから、
以下のマクロを走らせてみてください。
Sub GetPointNo()
Dim myPoint As Point
Dim ss As String
If TypeName(Selection) = "Point" Then
Set myPoint = Selection
With myPoint
.HasDataLabel = True
ss = myPoint.DataLabel.Name
.HasDataLabel = False
End With
MsgBox Split(ss, "P")(1)
End If
End Sub
myP.DataLabel.Nameを取得すると、
"文字列 S2P4"のように系列と要素が判ります。
(by あすなろさん)
うえの MsgBox のところを
Dim nSeries As Long
Dim nPoint As Long
Dim srcRange As String
nSeries = Val(Split(ss, "S")(1)) '系列番号
nPoint = Val(Split(ss, "P")(1)) 'Point番号
srcRange = Split(ActiveChart.SeriesCollection _
.Item(nSeries).Formula, ",")(1) 'X軸データ範囲
MsgBox Excel.Range(srcRange).Item(nPoint).Value
に変更して、実行してみてください。
X軸元データ範囲のPointされた番号の位置の値が表示されると思います。
|
|