• ベストアンサー

VisualBasic5.0でグラフを編集したい

Windows98/VisualBasic5.0で開発しております。 VisualBasic5.0の画面上にグラフを編集したいのですが、やり方がわかりません。 まず、コントロールのMicrosoftGraphグラフを利用するのか、MicrosoftExcelグラフのどちらを利用する方がよいのですか? MicrosoftExcelグラフからシートの値を編集するために、以下のように書きましたが、メモリ不足になってしまいます。 Me.Chart1.Object.sheet1.cells(A, 1).Value = "XX" やり方が悪いのでしょうか? どなたか教えてください。

  • matyap
  • お礼率78% (116/147)

質問者が選んだベストアンサー

  • ベストアンサー
  • todo36
  • ベストアンサー率58% (728/1234)
回答No.1

MsChartあるいは市販OCXを使うのがよろしいかと。 Excelを使う方法もあります。 http://www.bcap.co.jp/hanafusa/VBHLP/graph01.htm

matyap
質問者

お礼

すばらしい!文句なしです。ありがとうございました。 過去の質問を読んでもイマイチわからなかったので本当に助かりました。

関連するQ&A

  • Excel VBA グラフオブジェクトの使用方法について

    Excel2003のVBAについて教えて下さい。 以下の(1)~(4)のコードを用いて セル"A1"に設定された値をグラフスケール(最大値)に設定しようとしています。 (1) scaleData = Worksheets("シート1").Range("A1").Value (2) Set chartObj = ActiveSheet.ChartObjects(1) (3) Set chart1 = chartObj.Chart (4) chart1.Axes(xlValue).MaximumScale = scaleData グラフオブジェクト単体(グループ化しない)時は問題なく、グラフスケールの設定が行えたのですが、グラフオブジェクトやラベル、ボタンなどを結合すると、(3)で、以下のエラーメッセージが出て、グラフスケールの設定が行えません。 「WorksheetクラスのChartObjectsプロパティを取得できません。」 グループ化することにより、グラフオブジェクトの指定方法が異なるのでしょうか? 解決方法をご存知の方、教えて下さい。宜しくお願い致します。

  • マクロでグラフのデータ範囲を換える

    散布図のグラフの参照データをマクロによって変更したいのですが、エラーが出て困っています。どこが誤っているのかご指摘いただければ幸いです。 ワークシート2にあるグラフ1について、 その1つ目のグラフを変更したい。 xの値をワークシート1の (a,7)~(z,7)に yの値を同じく(a,10)~(z,10)にしたいと思っています。 このオブジェクトはこのプロパティかメソッドをサポートしないとのエラーが出ます。 Set range1 = worksheets(1).Range(Cells(a, 7), Cells(z, 7)) Set range2 = worksheets(1).Range(Cells(a, 10), Cells(z, 10)) With Worksheets(2).ChartObjects("グラフ 1") .SeriesCollection(1).XValues = range2 .SeriesCollection(1).Values = range1 End With

  • VBA グラフX軸の変更

    A列:X軸(日付) H列:Y軸(値) といったようなグラフを作成するにはどのようなソースで組めばよいのでしょうか? 現在は以下のようなソースまで組めます。 あとは、A列の日付をX軸に設定するだけなのですが、コーディングがわかりません。 --------------------------------------------------------------- Dim chart1 As Chart Set chart1 = Charts.Add 'H列グラフ化 chart1.SetSourceData Worksheets("Sheet1").Range(Cells(ROWINI, COLRUI), Cells(iend, COLRUI)) chart1.ChartType = xlLineStacked chart1.HasLegend = False --------------------------------------------------------------- どなたかアドバイスいただければ幸いです。

  • VBA フォームでチャートグラフ作成 Excel

    Excel2003を使用しています。 フォームのコントロール(ChartSpace)Microsoft Office Chart 11.0 を利用することにしました。 これを利用し、UserForm1にチャートグラフを作成したいと考えています。 データがあるシートを参照し、グラフを作成し、 フォーム上に表示したいです。 複数のグラフを表示する方法も教えて頂けるとありがたいです。 よろしくお願い致します。

  • グラフを表示するとき「’~’メソッドは失敗しました。」エラー発生

    またお世話になります。VB初心者です。 折れ線グラフを表示する処理を作りました。 開発機では上手くいったので、他のPCでテストしたところ 下記のようなエラーになってしまいます。 「’~’メソッドは失敗しました。’~’オブジェクト」 但し、毎回エラーになるというわけではなく 正しく表示してくれる場合もあります。 エラーのときも「OK」をクリックすると 途中までの状態を表示する場合もあるし (これも一定の状態ではない) 終わってしまう場合もあります。 開発環境: Windows2000(SP4) VB6.0 処理内容:  1.フォームにOLEオブジェクトを作成(Microsoft Graph)  2.フォームを開くとき(Form_Load)に、グラフの値を設定する。    下記のようにグラフのデータシートに数値を一個ずつ    設定しています。(Graphがオブジェクト名です)  Me.Graph.object.Application.DataSheet.Cells(2, 1) = 設定値 このような方法をとっています。 システムの配布先によって環境はいろいろですし 当然のことですが環境に左右されてはいけないので エラーになるにしても状態が一定でない現状に 原因がつかめず困りきっています。 このやり方が良くないのかもしれませんね。 VBでグラフを作成する場合は、どのようにするのがベストなのでしょうか? どなたか対処法をご存知の方、ご教示お願いします。 この情報ではわからない等ありましたら補足いたします。 よろしくお願いいたします。

  • Visualbasic DatagridView

    Visualbasic 2013 を利用して Windows Formアプリケーションを開発しております。 Form上にPanelを配置し、その中にDatagridViewを配置しております。 ※Anchorを「Top, Left, Right」と指定しております。 このような場合、フォームデザイナで他のコントロールのデザインを編集してリビルドするとDatagridViewのサイズが変化してしまいフォームのサイズよりも大きくなる事象が発生しております。 大変お手数お掛けいたしますが、何か原因/対策などわかる方がいらっしゃいましたらご教授頂けますと幸いです。

  • VBAでのオブジェクト名の付け方で困っています。

    私が知りたいのはユーザフォームを一度作成した後にオブジェクトを追加したときのオブジェクト名の処理の仕方です。 今、EXCEL VBAでアンケート入力フォームを作成しています。テキストボックスやチェックボックスが全部で70ほどあります。以下のようにControlsコレクションを用いてユーザフォームに入力した文字列などをワークシートに追加しています。 ……<略> For i = 1 To 10 Cells(Row, i).Value = Me.Controls("CheckBox" & i ).Value Next i ……<略> しかし、入力フォームの画面構成を変更して、新たにテキストボックスやチェックボックスを追加すると、例えば、ユーザフォーム上で隣り合ったTextBox1とTextBox2の間にTextBox35が入ってきて以下のようにコードを書き換えねばなりません。 ……<略> Cells(Row, 1).Value = Me.CheckBox1.Value Cells(Row, 2).Value = Me.CheckBox35.Value For i = 2 To 10 Cells(Row, i+1).Value = Me.Controls("CheckBox" & i ).Value Next i ……<略> プロパティからオブジェクト名のひとつひとつを編集してユーザフォームのテキストボックスの表示順にするのも手間ですし……まだ、設計の試行錯誤の段階なのでまだまだテキストボックスやチェックボックスを追加・削除をすると思いますし…… 何か効率のよいオブジェクト名の付け方はないでしょうか? みなさんはどのようにされていますか?

  • Visualbasic2013 WPF

    windows11でvisualbasic2013でFormアプリケーションを開発しており ElementHostを利用してWPFを利用しております。 全ての端末ではないのですがシステムを起動した際に「Controls.Add(Me.ElementHost2)」 で異常終了する端末が存在します。 異常終了する端末のOSはWindows11です。 同じOSであっても異常終了しない端末も存在します。 異常終了する端末はtry/chachで例外も補足されません。 異常終了が発生しないように改善したいのですが、例外も補足できず どのように対応すればよいのか分からない状況です。 分かる方がいらっしゃればご教授頂けないでしょうか。

  • ExcelVBAにて異なるシート間での値貼り付け

    Excel VBAの異なるシート間での値のコピーと貼り付けに関して質問をさせてください。 私はExcel2007を使って、Sheet1のセルの値をsheet2に貼り付けようとして以下のコード(1)を書きましたが、うまくいきません。動作確認のためsheet1内での値のコピペを行うコード(2)を作成し実行したところ、正常に動作しました。 コード(1)をコンパイルしたときに表示されるメッセージは、[実行時エラー'1004':アプリケーション定義またはオブジェクト定義のエラーです] です。 質問としては、 Q1:等号(=)を用いた値の貼り付けは、異なるシート間に対応していないのでしょうか。 Q2:コード(1)を改良する場合、どのように書き直せばよいでしょうか。 アドバイスいただけましたら幸いです。 コード(1) Worksheets("Sheet2").Range(Cells(1, 10), Cells(5, 10)).Value = Worksheets("Sheet1").Range(Cells(1, 1), Cells(5, 1)).Value コード(2) Worksheets("Sheet1").Range(Cells(1, 10), Cells(5, 10)).Value = Worksheets("Sheet1").Range(Cells(1, 1), Cells(5, 1)).Value

  • VBAでのグラフ作成について質問です。

    VBAでのグラフ作成について質問です。 Sheet1のA2:A10にx軸の値、Sheet1のD2:D10にy軸の値を設定した折れ線付き散布図を作成したいと思い、以下のようなマクロを組みました。 Sub Test() Dim chart1 As Chart Set chart1 = Charts.Add chart1.SetSourceData Worksheets("Sheet1").Range("A2:A10, D2:D10") chart1.ChartType = xlXYScatterLines End Sub 実行してみると、x軸に設定したセルがy軸の値になってしまい、 xの値が空欄の2つの折れ線グラフが現れてしまいます。 A2:A10をx軸の値に、D2:D10をy軸の値にしてグラフを作成するには上記のマクロをどのように変更すればよいのでしょうか?