tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板) [ツリー表示へ]   [Home]
一括表示(VB.NET VB2005)
タイトルVBからExcel にデータを送りグラフを表示することができません…
記事No455
投稿日: 2003/09/29(Mon) 11:25
投稿者VB.net初心者です
[OSのVer]:Windows2000    [VBのVer]:VB.NET 一年位前にstanderdを購入
こんにちは。VB.netとexcelを同時に使うことができればさぞかし便利に
なるだろうと思い花チャンさんの”Excel・Word関係”のところを
拝見していました。
そこの”VBからExcel にデータを送りグラフを表示する ”
という項目を丸々コピペでVB.netに貼り付けてみたところ


        Dim MyChart As ChartObject
        '表示位置・グラフの大きさを指定して
        '新しい埋め込みグラフを作成します。
        MyChart = xlSheet.ChartObjects.Add(10, 100, 600, 330)
        With MyChart.Chart
            'PlotBy プロパティでも系列を指定できます。
            '系列を列に変更   行は xlRows
            .SetSourceData(xlSheet.Range("A1:F6"), xlColumns)

            '縦棒グラフを指定
            .ChartType = xlColumnClustered

            '数値軸の最大目盛りを100に設定
            .Axes(xlValue).MaximumScale = 100

            '数値軸の目盛り間隔を20に設定
            .Axes(xlValue).MajorUnit = 20

            'グラフのタイトルを表示

上のプログラムの1行目のChartObjectは型が定義されていないとアンダーラインが出ます。
    8行目のxlColumnsには名前が宣言されていないと
    10行目のxlColumnClusteredも名前が宣言されていないと
    12、14行目のxlValueにも名前が宣言されていないとアンダーラインが出ます。
型の宣言や名前の宣言がいまだによくわかりません。
データ型は基本的なIntegerやstring、double等しかわかりません。

ChartObjectの型はどのようにして定義すればよいのかとxlColumnClustered等の名前は
どのように宣言すればいいのかをどなたか教えていただけないでしょうか?
ここでこのような事を聞いていいのかわからないので、もし聞いてだめな場合は
ご指摘ください。削除します。
よろしくお願いいたします

[ツリー表示へ]
タイトルRe: VBからExcel にデータを送りグラフを表示することができません…
記事No456
投稿日: 2003/09/30(Tue) 15:05
投稿者花ちゃん
参照先http://www.bcap.co.jp/hanafusa/
私も .NETはまだ使っておりませんので、詳しくは知りませんが下記のように変更すれば
動作すると思います。

> 上のプログラムの1行目のChartObjectは型が定義されていないとアンダーラインが出ます。
>         Dim MyChart As ChartObject
           Dim MyChart As Excel.ChartObject


下記は、    .NET用の定数に置き換えて下さい。

>     8行目のxlColumnsには名前が宣言されていないと
>             .SetSourceData(xlSheet.Range("A1:F6"), xlColumns)
               .SetSourceData(xlSheet.Range("A1:F6"), 2)

>     10行目のxlColumnClusteredも名前が宣言されていないと
>             .ChartType = xlColumnClustered
    .ChartType = Excel.XlChartType.xlColumnClustered
>     12、14行目のxlValueにも名前が宣言されていないとアンダーラインが出ます。
>             .Axes(xlValue).MaximumScale = 100
              .Axes(2).MaximumScale = 100

              .Axes(2).MajorUnit = 20

[ツリー表示へ]
タイトル解決いたしました!!
記事No457
投稿日: 2003/09/30(Tue) 21:46
投稿者VB.net初心者です
花ちゃんさん ありがとうございました!

無事にグラフを表示させることができました。

今までは、テキストボックスに表示させてそれをコピペで
メモ帳に貼り付け、さらにそれをエクセルで開いてから
グラフを表示させていました。
かなりの手間が節約できます。

本当にありがとうございました。

[ツリー表示へ]