2017-01-13 38 views
0

こんにちは私は(同じワークシート内の)グラフとその値とのリンクを解除するソリューションを探していました。 私は通常データを選択し、式(F2)に入り、F9を押してVBAを使用したExcelグラフのリンク解除

を入力します。

私のシリーズは数字になります。 私はこれをsendkeysとして自動化しました。私は別のオプションがオンラインであることを知っていますが、私はsendkeyとして解決策を望んでいます。 基本的にデータ> F2> F9> Enterを選択します。私は手動で行う場合、これは正常に動作します。

私のVBAコードは、まだ、データの第二セットの半分がまだリンクされている。この

ActiveChart.ChartArea.Select 
Application.SendKeys ("^{s}") 
ActiveChart.SeriesCollection(2).Select 
Application.SendKeys ("{f2}"), True 
Application.SendKeys ("{f9}"), True 
Application.SendKeys ("{f9}"), True 
Application.SendKeys ("~"), True 
Application.SendKeys ("^{s}") 

ActiveChart.ChartArea.Select 
ActiveChart.SeriesCollection(1).Select 
Application.SendKeys ("{f2}"), True 
Application.SendKeys ("{f9}"), True 
Application.SendKeys ("~"), True 

のように見えます。

ありがとうございます - LGR

答えて

0

あなたはこのような何かを行うことができますオブジェクトSeries.Valuesの参照からRangeに変換するには、実際の基本値に変換します。

+0

ありがとうございます。私は今までにオンラインでいくつかの "ソリューション"を見つけました。それらのすべてが同じ目的を持っています。あなたは私が見つけた最も効率的でシンプルで短いソリューションです。私がこのようなことを他の人と私がどう考えていたかを考えることができないほど簡単です。 – LGR

+0

私を悩ます唯一のことは、行を削除するとx軸のラベルが削除されることです。例えば。プロセス:削除された場合5、 ""に変わります:5。たぶんあなたは私のために別の解決策を持っているでしょう。 – LGR

+0

@LGRは何の問題か分かりませんが、新しい/別の質問をすることで、より多くの人々がそれを手伝うことができるようになります(もちろん、時間があればそれもチェックしようと思います)。あなたの説明とともにスクリーンショットを含めるようにしてください!乾杯 –

0

送信キーを使用しないようにしてください。代わりにこれを使用します。

ActiveWindow.Selection.ShapeRange(1).LinkFormat.BreakLink 

出典:http://www.vbaexpress.com/forum/showthread.php?45829-How-to-break-links-to-excel-chart

編集:デヴィッドZemensからのコメントを1として、これがないExcelのグラフではなく、埋め込みグラフのために動作しますが、

+1

これは埋め込みグラフでも機能しますが、ワークシートにある通常のExcel ChartObjectでは機能しません。 –

+0

@DavidZemens回答にメモを追加します – User632716

関連する問題