プロが教える店舗&オフィスのセキュリティ対策術

 こんにちわ。VBでEXCELを起動して、データを転送してグラフを書くところまで、皆さんのお力を借りて辿り着きました。その度は大変お世話になりました。それで、今回の問題は、そのグラフのプロパティも変更したい、、。Withとかを使って??実際やりたいのはEXCELの機能で目盛の書式設定、最大値最小値の変更をVBの変数を使って可変にしようかなと考えています。作り方に問題があるとは思いますけど、なんかデータとかが可変なんでグラフに偏りが出てくる為、そんな処理をしなければならないような感じなんですが、どうぞ宜しくお願いします。また説明下手ですね、、。

A 回答 (9件)

( ̄ー ̄)ニヤリ

    • good
    • 0
この回答へのお礼

♪(⌒∇⌒)ノ""

お礼日時:2002/01/17 10:30

>  Set MyChart = xlSheet.ChartObjects("グラフ 1")


この行の次に
  MyChart.Activate
を追加してみてください。
    • good
    • 0
この回答へのお礼

 失礼しました。回答を頂いてスグ試したところ実現することができて、お礼をするのをすっかり忘れていました。ありがとうございました。なんだか、またお世話になる気もしますが、その時はまたどうかどうか宜しくお願いしまッす。

お礼日時:2002/01/17 09:41

明日ですね。

わかりました。今日はこれで最後の書込みにしておきます。
まだ 仕事中ですので、掲示はみております。

新たな質問は別スレッドにしてくださいね。あとで検索する時、一つのスレッドには一つの質問の方が、あとで検索しやすいので・・・・

やりたいことはピクチャボックスに描画していき、
Call SavePicure(Picture1.Image, "C:\Test.bmp")
っていうような要領で実現可能と思われます。

別質問をとして発言を行ったなら、その時に詳しく述べます。
    • good
    • 0
この回答へのお礼

 大変迷惑かけてます。まだまだ常識がないですね、、。これから精進いたします。一応、これがソースの一部なんですけど、、。

Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
Dim strFileNAM  As String
Dim strExcelSheet As String
Dim MyChart As ChartObject

'ブックのシート名
strExcelSheet = "Sheet1"
Set xlApp = New Excel.Application
Set xlBook = GetObject(strExcelFile, "Excel.Sheet")
Set xlSheet = xlBook.Worksheets("Sheet1")

For i = 1 To intCnt - 1
xlSheet.Cells(0 + i, 11).Value = dblPastCalData(i)
Next i

xlSheet.Cells(1, 3).Value = dblJogen
xlSheet.Cells(2, 7).Value = dblKagen
xlSheet.Cells(1, 15).Value = dblCalData
'絶対値を計算
dblMemoriVAL = dblABSMax(dblPastCalData, intCnt - 1)
Set MyChart = xlSheet.ChartObjects("グラフ 1")

With MyChart.Chart
.Axes(xlValue).MaximumScale = dblMemoriVAL
.Axes(xlValue).MinimumScale = -(dblMemoriVAL)
End With

xlSheet.Parent.Windows(1).Visible = True
'グラフをコピー
xlApp.Worksheets(1).ChartObjects("グラフ 1").Copy
'クリップボードから貼り付け
frmComGraph.Picture1.Picture = Clipboard.GetData
'ファイル名を指定
strFileNAM = strTstKoMoku & lngNO & strCheck & ".bmp"
frmComGraph.Picture1.Refresh
Call SavePicture(frmComGraph.Picture1.Image, "C:\Documents and Settings\Graph\デスクトップ\GraphVB\" + strFileNAM)

お礼日時:2002/01/11 10:53

エクセルのブックを開く部分のプログラムを見せてください。



おそらく ブックオブジェクトの指定がないからのような気がします。
    • good
    • 0
この回答へのお礼

 ちょっと今、手元にソ-スがないので明日見てもらいたいですけど、、。また新たな問題がありましてVBで「Ω」こんな絵を書いて丸の中と脇に変数を表示、そしてそれを画像ファイルとして保存。また説明不足だとは思いますけど、そんなコンポーネントみたいなものってありますか?なんて次から次に分からないことだらけなんでしょう、、。

お礼日時:2002/01/10 20:38

エクセルのグラフの操作コードを記述してるのは、エクセルVBAに記述してますか?


それともVB側?

もしVB側であればActiveSheetの前に、ブックやエクセルアプリケーションを指定しなければなりませんよ。

とりあえず、さっきのコードはどちら側に記述したのでしょうか?
    • good
    • 0
この回答へのお礼

VB側です。EXCEL側にはなるだけ記述はしたくないのです。

お礼日時:2002/01/10 18:20

#2の発言で できませんでしたか?



参考URL:http://www2s.biglobe.ne.jp/~iryo/vba/VBA13.html
    • good
    • 0
この回答へのお礼

 んー、、なんだか出来ないんですよね。EXCELの不具合かと、、ってヘルプで見たんですけど、、でもそれってEXCEL4.0の話かも、、。

お礼日時:2002/01/10 17:33

ごめんなさい


xlCategoryをどのように使用しているかがわかりません。

あと一度の書込みに、お礼と補足をまとめた方がいいですよ。
いざ何か書きたい時に、書けなくなってしまいますよ。
    • good
    • 0
この回答へのお礼

 そうですね、私も追記が出来なくてたまに困っていました。私のしたかったことは
ActiveSheet.ChartObjects("グラフ 1").Activate
With ActiveChart.Axes(xlCategory)
  .MinimumScale = 1  '最小
  .MaximumScale = 9  '最大
  .MajorUnit = 4   '目盛間隔
End With
という処理でした、、。またまた言葉不足でスミマセン。これって、やっぱり出来ないものなんですか?

お礼日時:2002/01/10 15:48

あけましておめでとうございます。


ごめんなさい。

以前に回答したつもりが、どうやら決定ボタンを押し忘れていたようで、回答されていないことに今気が付きました。
手後れでしょうか?

ActiveSheet.ChartObjects("グラフ 1").Activate
With ActiveChart.Axes(xlValue)
  .MinimumScale = 1  '最小
  .MaximumScale = 9  '最大
  .MajorUnit = 4   '目盛間隔
End With

この回答への補足

 いろいろ調べたところ xlCategoryの方を変えられれば私のしたいことは実現できそうなんです。でもEXCElの不具合?で出来なそうなんですが、これって出来るんですかね??

補足日時:2002/01/07 16:34
    • good
    • 0
この回答へのお礼

 あけましておめでとうございます。なんだか、あきらめかけていたところです、、。TAGOSAKU7さんの返事で、またやる気が出てきました!

お礼日時:2002/01/07 16:33

ChartAreaだったかな?未検証です。


その中にいろいろ情報が入ってると思ったけど・・・

ちがったら、マクロを記録して行いたい処理を記憶させて、コードを見たらなんとなくわかると思いますが・・・

この回答への補足

 すみません、ChratAreaの使い方を教えて下さい。ちなみにマクロは教えてもらってちょっと試してみたんですけど、意味不明でした。、、、私には、、。

補足日時:2001/12/20 09:37
    • good
    • 0
この回答へのお礼

 あひさしぶりです。毎度お世話になっているHUKAHIREです。こうも寒いと温かいものが恋しくなりますね。フカヒレスープ飲みたいなー。

お礼日時:2001/12/20 09:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!