エクセルのVBAについて

最近の書き込み件数: 今日 0件、昨日 0件
未読分:3件

最新20件 最新50件 最新100件 最新200件 200件以前
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)


Excel VBAでIEを思いのままに操作できるプログラミング術 Excel 2013/2010/2007/2003対応

近田 伸矢, 植木 悠二, 上田 寛

IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。

Message#3 2015年2月5日(木)11時37分
From: キャリア
返事 削除 変更
Excelのバージョンによってマクロの記録に違いがあります、エクセル2007のマクロの記録では表題の項目は記録されますが内容(フォーマットの内容)は記録できません、Excel2003やExcel2010以降ではできます。

折れ線グラフの線の書式設定ですが書式設定をモジュールに作ると対象のグラフをアクティブにしてモジュール化したマクロを実行すれば希望通りの書式に変更設定できます。

Sub DrawChart()

With ActiveChart.SeriesCollection(1)
.Border.Weight = 1 'xlThin      線の太さ
.Border.LineStyle = xlContinuous   線種
.Border.LineStyle = 1
.Border.ColorIndex = 1        線の色
.MarkerBackgroundColorIndex = 1    マーカーの色
.MarkerForegroundColorIndex = 1    マーカーの色
.MarkerStyle = xlDiamond       マーカーの形
.Smooth = True
.MarkerSize = 8 マーカーのサイズ
.Shadow = False           影(True or False)
End With
  With ActiveChart.SeriesCollection(2)  
  End With
With ActiveChart.SeriesCollection(3)  
  End With

End Sub

ActiveChart.SeriesCollection(1)の番号は表示する線に順番に振られるのでその数だけ書く必要があります、不要の場合でも必ず順番を守らなくてはいけません、表示したくない線でもその番号の書式をinVisibleかFalseにするか番号を飛ばしても線と番号が一致する必要があります、上記以外にも設定項目はあります。

ネットで調べれば詳しく出ていますが実際にコードを書いて自分で確認することを薦めます,記録では色をRGBで(例 255,0,0)表示しますが色番号 黒(1)白(2) 赤(3)....もできるの色番号のほうが簡単と思います。

参考になれば幸いです

Message#2 2015年2月5日(木)11時35分
From: いろは
返事 削除 変更
具体的にどうしたいか、こちらで判りませんから、以下に挙げる例を基に、
VBAのヘルプ、VBEのオブジェクトブラウザ等を参考に応用して、
やりたいように書き上げていってください。
(添付画像からやりたい事をこちらで察するのは難しいですし、
 そちらから詳細な説明を加えるのも大変だと思いますので。)

  Series  データ系列
  FillFormat  マーカー
  LineFormat  線
各オブジェクトについては、敢えて変数とWIthフレーズを使うことで、
以下の記述の各Withブロックの内側に
ドット"."をタイプするだけでメソッドやプロパティ等のメンバーが、
イコール"="をタイプするだけでプロパティに応じた組込み定数の候補が、
入力のヒントとして表示されるような書き方にしてあります。
VBEのオブジェクトブラウザを(F2キーで)表示して、
中段左側にある[クラス]と書かれたペイン(小さいウィンドウ)の中を探して、
上記の3つのキーワードを、それぞれクリックしてみて下さい。
中段右側に['Series' のメンバー]としてメソッドやプロパティが一覧できます。
またはVBAのヘルプを表示させて上記の3つのキーワードを検索してみて下さい。


Sub Re8908589()
Dim oSeries As Series
Dim oFillFormat As FillFormat
Dim oLineFormat As LineFormat
  With ActiveSheet.ChartObjects("グラフ 1").Chart ' ★グラフ名を文字列で指定
    Set oSeries = .SeriesCollection(1) ' ★データ系列を番号で指定
    With oSeries
'      .Smooth = True
      With .Format
        Set oFillFormat = .Fill
        With oFillFormat
'          .Visible = msoTrue
'          .Transparency = 0
          .ForeColor.RGB = RGB(255, 0, 0) ' マーカーの色を赤にする場合
'          .Solid
        End With
        Set oLineFormat = .Line
        With oLineFormat
'          .Visible = msoTrue
'          .Transparency = 0
          .ForeColor.RGB = RGB(255, 0, 0) ' 線の色を赤にする場合
          .Style = msoLineSingle ' 線のスタイルを単線にする場合
'          .Weight = 1
'          .DashStyle = msoLineSolid
        End With
      End With
    End With
  End With
End Sub

Message#1 2015年2月5日(木)10時58分
From: meron
返事 削除 変更
エクセル2007にて、散布図(直線とマーカー)という種類のグラフの色(9種類)を変えなくてはならないので、VBAを使おうとしました。
しかし、記録してみても下記のようにグラフを選択した後の記録が残らない状態になってしまいます。

Sub Macro1()
'
' Macro1 Macro
'

'
ActiveSheet.ChartObjects("グラフ 1""").Activate
ActiveChart.SeriesCollection(1).Select
End Sub


流れとしては
1.折れ線グラフを右クリックで選択
2.データ系列の書式設定
3.マーカーの色、線の色、先のスタイルなどを変更
4.適用後、記録終了
という作業をしています。

ネットで検索をかけたりしても散布図に関するVBAの記事や質問はなかった(棒グラフなどはあった)ので、改めて質問をさせていただきました。

詳しい方、回答お願い致します。

最新20件 最新50件 最新100件 最新200件 200件以前
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降

ExcelのVBAについてのQ&A掲示板

↑ExcelのVBA全般について分からない事があればこちらの掲示板よりご質問ください^^

VBAのInternetExplorer操作入門

↑ExcelのVBAをマスターできたら、エクセルVBAのIE(InternetExplorer)操作にも挑戦してみてください^^

VBAのIE制御入門RSS

RSSフィードを登録すると最新記事を受け取ることができます。

VBAIE操作のスカイプレッスン

エクセルVBAのステートメント

こちらでは、エクセルVBAの事例で利用したステートメントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

スポンサー リンク

エクセルVBAのオブジェクト

こちらでは、エクセルVBAの事例で利用したオブジェクトをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

スポンサー リンク

エクセルVBAのプロパティ

こちらでは、エクセルVBAの事例で利用したオブジェクトのプロパティをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのメソッド

こちらでは、エクセルVBAの事例で利用したオブジェクトのメソッドをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

エクセルVBAのイベント

こちらでは、エクセルVBAの事例で利用したオブジェクトのイベントをまとめたものです。ExcelのVBAには様々な機能が用意されていますので一度ご確認ください。

dmb.cgi Ver. 1.068
Copyright(C) 1997-2014, hidekik.com