• 締切済み

Excel マクロ グラフの線とマーカーの太さ変更

Excel2010でのマクロで折れ線グラフをマクロで作ろうとしています。 線の太さを2.25pt、マーカーの太さを1.25ptにしたいのですが、 マクロの記録では ActiveChart.SeriesCollection(2).Select '線の太さ With Selection.Format.Line .Visible = msoTrue .Weight = 2.25 End With 'マーカーの太さ With Selection.Format.Line .Visible = msoTrue .Weight = 1.25 End With となり、同じ太さになってしまいます。 手動でデータ系列の書式設定をすると各々別の太さになるのですが、 マクロではどうすればいいでしょうか? 宜しくお願いいたします。

  • cmd0
  • お礼率84% (16/19)

みんなの回答

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.3

解決の手続きをされないのは未だ何かあるのですか? 疑問があれば補足してください。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

>線の太さを2.25pt、マーカーの太さを1.25ptにしたいのですが 折れ線グラフでは線の太さが2.25ptの時は、マーカーの大きさは2pt以上でないとエラーが出ます。 ActiveChart.SeriesCollection(2).Select With Selection   '線の太さ .Format.Line.Weight = 2.25   'マーカーの大きさ  .MarkerSize = 2 End With

cmd0
質問者

お礼

回答ありがとうございます。 マーカーの大きさではなく、マーカーの枠の太さです。 説明不足で申し訳ありませんでした。

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.1

    With ActiveChart.SeriesCollection(2)         .Format.Line.Weight = 5         .border.Weight = 3     End With

cmd0
質問者

お礼

回答ありがとうございます。 試してみたら見事にできました! 助かりました。

関連するQ&A

  • エクセルVBAでグラフの線とマーカを設定したい

    エクセルVBAでグラフの線とマーカを設定したいです。 グラフの線は無しでマーカの線が有りにしたいのですが、 マクロで記録したコードを見ると グラフの線、マーカの線ともにFormat.Line.Visibleで指定しています。 実際にコードを記述しても、以下の様になり、グラフの線が表示されてしまいます。 ChartObjects("1").Chart.SeriesCollection(10).Format.Line.Visible = msoFalse With ChartObjects("1").Chart.SeriesCollection(10).Format.Line .Visible = msoTrue .ForeColor.RGB = RGB(255, 102, 0) .Transparency = 0 End With グラフの線は無しでマーカの線が有りに設定は出来ないのでしょうか?

  • Excelマクロ、散布図の線種設定

    Excelの散布図をマクロで操作するプログラムを作ろうとしています。 それぞれの系列をマーカー付きの折れ線で表示しており、 点と点を結ぶ線を破線、マーカーの枠線を実線に設定しようとしています。 しかし、マクロの記録では、 点と点を結ぶ線の設定は ActiveChart.FullSeriesCollection(1).Select With Selection.Format.Line .Visible = msoTrue .DashStyle = msoLineDash End With と記録され、マーカーの枠線の設定は ActiveChart.FullSeriesCollection(1).Select With Selection.Format.Line .Visible = msoTrue .DashStyle = msoLineSolid End With と記録され、 線種を表すmsoLineDash, msoLineSolid以外違いがなく、 実際にコードを実行しても、「点と点を結ぶ線の線種」と「マーカーの枠線の線種」が同じになってしまいます。 どうすれば 「点と点を結ぶ線の線種」と「マーカーの枠線の線種」 を別々に設定できるのでしょうか?

  • エクセルマクロのグラフ操作

    エクセルにてグラフの線の色を変えるマクロを記録し そのまま実行するとエラーになります。 (Lineメソッドは失敗しました) どこを変更すれば上手くいきますでしょうか。 '------------------------記録したマクロ ActiveSheet.ChartObjects("グラフ 1").Activate ActiveChart.Legend.Select ActiveChart.Legend.LegendEntries(1).Select With Selection.Format.Line .Visible = msoTrue .ForeColor.RGB = RGB(192, 0, 0) .Transparency = 0 End With 環境 Windows 7 Office 2010

  • 【VBA】グラフの線とマーカーの枠線

    エクセルのVBAで、グラフの線とマーカーの枠線を別々に扱いたいのですができなくて困っています。(現在はExcel2016使用しています。) 具体的には、線付き散布図でマーカーの枠線は実線で表示したいのに対し、線を変えると、マーカーの枠線も一緒に変化してしまいます。 以下のようなことは、試してみたのですが両方ともにマーカーの線も変化してしまいます。 with Activeworkbook.Activechart.seriesCollection(Int) .Format.Line.DashStyle や .Border.LineStyle マーカーのみ、または散布図のマーカーを結ぶ線の一方のみの線のプロパティを変化させる方法はありますでしょうか。 よろしくお願いいたします。

  • 【VBA】グラフの線とマーカーの枠線

    エクセルのVBAで、グラフの線とマーカーの枠線を別々に扱いたいのですができなくて困っています。(現在はExcel2016使用しています。) 具体的には、線付き散布図でマーカーの枠線は実線で表示したいのに対し、線を変えると、マーカーの枠線も一緒に変化してしまいます。 以下のようなことは、試してみたのですが両方ともにマーカーの線も変化してしまいます。 with Activeworkbook.Activechart.seriesCollection(Int) .Format.Line.DashStyle や .Border.LineStyle マーカーの枠線のみ、または散布図の線のみプロパティを変化させる方法はありますでしょうか。 画像のように、一方を変更させようとすると、マーカーの枠線も変わってしまい(1番上側の青線)、訳が分からなくなります。 緑線のように、マーカーの線は実線で示したいです。 よろしくお願いいたします。

  • Word2007マクロ

    宜しくお願い致します Word2007でこんな事が出来ますか Excel2007で線路を作るマクロを作成しました(本を見て) これをWordでも使用したいのですが、Excelのマクロそのまま WordのVisual Basicに書き込んでもエラーが出て機能しません Excelのマクロは以下です Sub 線路作成() 上端位置 = Selection.Top 左端位置 = Selection.Left  Selection.ShapeRange.Line.Weight = 6# Selection.ShapeRange.Line.Visible = msoTrue Selection.ShapeRange.Line.Style = msoLineSingle Selection.ShapeRange.Duplicate.Select Selection.ShapeRange.IncrementLeft -18# Selection.ShapeRange.IncrementTop 9.6 Selection.ShapeRange.Line.DashStyle = msoLineDash Selection.ShapeRange.Line.Weight = 4.5 Selection.ShapeRange.Line.Visible = msoTrue Selection.ShapeRange.Line.Style = msoLineSingle Selection.ShapeRange.Line.ForeColor.SchemeColor = 9 Selection.ShapeRange.Line.Visible = msoTrue Selection.Top = 上端位置 Selection.Left = 左端位置 End Sub Wordで使えるようにするには、どこを直せばよいでしょうか。

  • Excelのピボットグラフの線描画でエラー

    初めて質問させていただきます。 現在Excel2010でピボットグラフを描画しています。 (ただし、利用ユーザーがExcel2010ではないため、保存形式をExcel97-2003形式で保存) 描画したグラフに対し、VBAで次のように編集を行っています。 Dim objSrs As Series With ActiveChart  For Each objSrs In .SeriesCollection   'データ要素をループ   For i = 1 To objSrs.Points.Count    With objSrs.Points(i)     .MarkerStyle = xlMarkerStyleDiamond '※実際はSelect Caseの条件で設定     .MarkerForegroundColorIndex = 29 '※実際はSelect Caseの条件で設定     'マーカーの色を変更     .MarkerBackgroundColorIndex = .MarkerForegroundColorIndex     'マーカーの線幅を設定     .Format.Line.Weight = 1.5    End With   Next i  Next objSrs End With 作成した自分の端末(Excel2010)では問題ないのですが、Excel2007が入った端末では、  .Format.Line.Weight = 1.5 の所で次のようなエラーになってしまいます。  実行時エラー '-2147417848(80010108)'  'Weight' メソッドは失敗しました:'LineFormat'オブジクト ウォッチで中を確認してみると、objSrs.Formatには値があるのですが objSrs.Format.Lineには、<アプリケーション定義またはオブジェクト定義のエラーです。> となっています。 線の幅だけではなく、 .Format.Line.ForeColor.RGB = RGB(253, 153, 153) でもエラーになります。 .Format.Lineはバージョンで、記述方法に違いがあるのでしょうか?

  • EXCELのVBAでの折れ線グラフの属性設定

    Microsoft Excel for Office 365を使用しています。 このEXCELでVBAを使って折れ線グラフの属性設定を行っているのですが、 折れ線グラフの線種を変更をするために With ActiveSheet.ChartObjects(j).Chart.SeriesCollection(i) .Border.Color = lineColor .Format.Line.Weight = 1.75 .Format.Line.DashStyle = lineKind .MarkerStyle = markKind .MarkerSize = markSize .MarkerBackgroundColor = markColor .MarkerForegroundColor = lineColor End With のように.DashStyleで線種を設定しているのですが、このように 設定するとマーカーの枠線の線種も変更されてしまいます。 マーカーの枠線の線種を変更せずに折れ線の線種のみを変更する 方法をご教示ください。 よろしくお願いいたします。

  • エクセルマクロでオブジェクトを選択する方法

    エクセル(2002)を使っています。マクロの記録機能を使って円を描くマクロを作成しました。 Sub Maru(xpos, ypos, hankei) ActiveSheet.Shapes.AddShape(msoShapeOval, xpos, ypos, hankei, hankei).Select Selection.ShapeRange.Fill.Visible = msoFalse Selection.ShapeRange.Fill.Solid Selection.ShapeRange.Fill.Transparency = 0# Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.DashStyle = msoLineSolid Selection.ShapeRange.Line.Style = msoLineSingle Selection.ShapeRange.Line.Transparency = 0# Selection.ShapeRange.Line.Visible = msoTrue Selection.ShapeRange.Line.ForeColor.SchemeColor = 64 Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) End Sub 次にこの円を削除したいと思い、同じようにマクロの記録機能を使ったところ、 Sub Macro3() ActiveSheet.Shapes("Oval 64").Select Selection.Delete End Sub となりました。"Oval 64"はオブジェクトの名前のようですが、名前がわかっていないオブジェクト(但し上記マクロで書いたので場所はわかっている)を選択するにはどうしたらいいでしょうか。

  • Excelでのグラフ作成用マクロについて。

    「新しいマクロを記録する」でグラフ作成用のマクロを作りました。 内容は、 1.sheet1のBC列を散布図でsheet2に出力。(4つほど別々のグラフを作成) 2.プロットエリアの拡大 3.図の位置調整・図の大きさ調整。(4つが重ならないように) というものです。 一応出来たのですが、何故か選択列を変更して(マクロ内の列選択を変更)出力・プロットエリア拡大までは出来るのですが、3が出来ません。 それで、分からないなりにマクロ内を覗いてみたところ、図の位置を調整する際に、対象となる図が ActiveSheet.Shapes("グラフ 17").IncrementLeft -177.75 などと言うように、グラフ17を参照してしまっているためにうまく動かないのだと思いました。 (そもそも、名前なんて付けていないはず・・・と思って調べていたら、どうやら「グラフウインドウ」で見ることが出来る名前を参照しているようでした。) いっそのこと、グラフをクリック・ドラッグで移動させるのではなく、出力する際に整然と並ぶように設定したいです。どうすればよいでしょう? 一応、作成したものを載せておきます。 ・1~2 Charts.Add ActiveChart.ChartType = xlXYScatter ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("B1:C32158"), _ PlotBy:=xlColumns ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet2" With ActiveChart .HasTitle = False .Axes(xlCategory, xlPrimary).HasTitle = True .Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "mass" .Axes(xlValue, xlPrimary).HasTitle = True .Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "counts" End With ActiveChart.HasLegend = False ActiveChart.PlotArea.Select With Selection.Interior .ColorIndex = 2 .Pattern = xlSolid End With Selection.Top = 1 Selection.Width = 323 Selection.Height = 180 Selection.Left = 15 Selection.Width = 334 Selection.Height = 194 ActiveChart.Axes(xlCategory).Select With ActiveChart.Axes(xlCategory) .MinimumScale = 0 .MaximumScale = 50 .MinorUnitIsAuto = True .MajorUnit = 5 .Crosses = xlAutomatic .ReversePlotOrder = False .ScaleType = xlLinear .DisplayUnit = xlNone End With End Sub 3. ActiveSheet.Shapes("グラフ 17").IncrementLeft -182.25 ActiveSheet.Shapes("グラフ 17").IncrementTop -105.75 End Sub

専門家に質問してみよう