• ベストアンサー

またまたグラフ、、

TAGOSAKU7の回答

  • TAGOSAKU7
  • ベストアンサー率65% (276/422)
回答No.3

まず最初に http://oshiete1.goo.ne.jp/kotaeru.php3?q=154890 で発言したARCさんに感謝です。VB環境を臨時で入手できました。 #2の発言はまだ見てないようですが・・・ とりあえず処理が見えなければOKかな?っと勝手に思って、クリップボードを使用してます。(クリップボード使用は不本意) 処理の流れの詳細としては、まず・・・ エクセルにデータを出力(勝手にグラフに反映) エクセルの保存 ・・・で次のような処理を行ってください。 ActiveSheet.ChartObjects("グラフ 1").Activate ActiveChart.ChartArea.Select ActiveChart.ChartArea.Copy 要するに、グラフオブジェクトをクリップボードにコピーする処理です。 そして、エクセルを閉じてください。(閉じるときの保存不要) ここからが本題で、 ダミーのピクチャボックスに画像を読み込む 保存する 以上です。 もしこれ以外の方法であれば、かなり実験/検証が必要です。 CreateFile関数でBitMapファイルそのものを作成していかなければなりません。かなりのチカラ作業となります。BITMAPのヘッダやパレットを直接指定して、幅*高の分だけの各ドットを、手作業でセットする処理になると思います。 もし締め切りが近いのであれば、とりあえず下記のコードを参考に作成して、それでもダメならば先生からヒントを得てください。大学のVBの課題で、そこまでの要求をする先生はあまりいないと思います。Cでグラフィック大好き先生ならわかりませんが・・・ ピクチャボックスもダメなときのために、一応参考URLを載せておきます。 http://www.alpha-net.ne.jp/users2/ei9711/oldkouza/vbkouza.html Option Explicit Private Declare Function IsClipboardFormatAvailable Lib "user32.dll" (ByVal wFormat As Long) As Long Private Const CF_METAFILEPICT = 3 Private Sub Command1_Click()   'ファイルパスを指定して保存する   Call SavePic_FROM_Clipbord("c:\test.bmp") End Sub Private Sub Form_Load()   'ダミーピクチャボックスの書式設定   With Me.Picture1     .Appearance = 0     .AutoRedraw = True     .AutoSize = True     .BorderStyle = 0     .Visible = False   End With End Sub 'クリップボードからの画像の取り込み&保存 Private Sub SavePic_FROM_Clipbord(inPictureFilePath As String)   '画像形式であることをチェック   If IsClipboardFormatAvailable(CF_METAFILEPICT) = 0 Then     MsgBox "画像を取り込めません"     GoTo PGMEND   End If      With Me.Picture1     '画像の取り込み     Set .Picture = Clipboard.GetData()          '画像の保存     Call SavePicture(.Image, inPictureFilePath)   End With PGMEND: End Sub

参考URL:
http://www.microsoft.com/JAPAN/developer/library/Vb98/vbmthclearx.htm
HUKAHIRE
質問者

お礼

私が確認する前に回答を何度も頂いて失礼極まりないですね、、。気を付けます。今から試してみます。

関連するQ&A

  • エクセル&パワーポイントのグラフを画像で保存したいのに

    エクセルで作成したグラフを画像(bmp形式)に変換したいのです。グラフは白黒で 棒グラフと文字・線だけのいたってシンプルなものです。 1つのグラフはエクセルからそのままペイントへコピーし、bmp形式で保存したところ問題なくきれいでした。 が、もう1つのグラフはパワーポイントへ一旦移して加工しており、これをペイントへコピーし、bmpで保存すると、フォントが失われ、輪郭がギザギザの表示になってしまいました。(せっかく苦労してきれいに書いたのに!)パワーポイントを介すると情報が失われるのでしょうか?OSはWin98、ExcelとPowerpointは97、IE4.0を使用しています。 この画像をあるサイトに送信すると、PDFに変換され、そのまま写真原稿になり製本されてしまうので、できるだけ画像の劣化は避けたいのです。送信作業は一度だけなので、ファイルサイズを小さくすることは考えていません。このサイトで推奨されている形式はTIFかEPSですが、使用中のパソコンにはphotoshop等は入っていません。GIFとJPEGで試してみましたが、線がぼやけたり、白いはずの背景が汚く汚れてしまってダメでした。 このグラフをTIFかEPSに変換するフリーソフトなどご存知でしょうか?なにか良い方法をご存知の方、ご教授いただければ有り難いです。宜しくお願いいたします。

  • エクセルのグラフのコピー(書式も)

    エクセルで、2つのファイルを使って作業します。 片方(A)のファイルで作製したグラフを、他方のファイル(B)に「コピー→貼り付け」すると、Aでデータ値を修正すると、Bにもグラフ上の値は反映されます。 しかし、Aでグラフの色やプロットエリアの色など書式を変えたのは、Bには反映されません。 書式も反映させるコピーの方法はないのでしょうか? 当方まだ初心者ですので、申し訳ございませんがそういう方法があればご教示下さい。

  • エクセル2003のグラフギャラリーファイル

    こんばんは。お世話になります。 エクセル2003で、ユーザー設定グラフを登録すると、下記のようなメッセージが出ました。 ”グラフギャラリーファイルは現在使用中か、または存在しません。そのためユーザー定義のグラフを指定したフォルダに保存できません。[ok]をクリックし、ギャラリーファイルの場所または場所を変更してから保存して下さい” というもので、場所を変更して保存する操作をしたところ、それまで作成していたエクセルファイルは直近の保存した時刻のまま状態に、そして、新しくエクセルファイルができました。 初めてみたメッセージでどう対処してよいのかわかりません。 そのまま新しくできたエクセルファイルで作成し続けたものかどうか、わからず困っております。 エクセル2003で、売り上げ実績の資料を作っており、同じ種類のグラフを多数作るため、ユーザー設定グラフをつくろうとしたのですが、このメッセージの意味がわからないし、新しくできたエクセルファイルで作業を続けようにも、なんか気味悪いし・・・という感じです。 不勉強で説明不足で申し訳ありませんが、どうかご回答よろしくお願いします。

  • エクセルでグラフのコピー(書式も反映)

    エクセルで、2つのファイルを使って作業します。 片方(A)のファイルで作製したグラフを、他方のファイル(B)に「コピー→貼り付け」すると、Aでデータ値を修正すると、Bにもグラフ上の値は反映されます。 しかし、Aでグラフの色やプロットエリアの色など書式を変えたのは、Bには反映されません。 書式も反映させるコピーの方法はないのでしょうか? 当方まだ初心者ですので、申し訳ございませんがそういう方法があればご教示下さい。

  • excel2007のグラフのコピー

    Windows7でexcel2007使用です。 excel2007で表を作りそれで、縦に数値、横に年月で要所に吹き出しの説明を入れた、折線グラフを作っています。 そのグラフをホームページビルダー14に載せるべく、コピーするのですが、何故か2個の吹き出しが表示されません。保存しなおしても上手く行きません。 グラフをペイントやホームページビルダー14に直接コピーしてもダメでした。 確か以前はWebページとして保存から楽に取れたのですが、2007ではそれも出来なくて困っています。 よろしくお願いします。

  • パワーポイント2010でグラフを作って、パワーポイント2007に送って

    パワーポイント2010でグラフを作って、パワーポイント2007に送って加工できる方法を知りたいです。 2010でグラフを作るときに、エクセルのファイルとリンクさせて、グラフを作って、データを更新できるようにしたいのですが、2010で作って2007以前のパワポを持つ人にエクセルのファイルとともに送ると、グラフがただの画像のように見えて、エクセルのファイルが開けられないとのことです。97-03の形式で保存していますが、保存の時に2007以前では正しく見られないような警告が出てしまいます。 どうしたら2007の人に送って、あちらでデータを修正して加工できるよう保存できるのでしょうか。 エクセルにリンクするのではなく、パワーポイントに張り付いてるワークシートは、開けられるようです。 互換性について、いまいち理解できていません。よろしくお願いします。

  • エクセルのグラフ

    エクセルでレポートを提出するんですが、2003のファイルで提出しなければいけないんです。私は2007を使っていて、グラフを作成すると互換性がなくなってしまいます。どうすれば2003のグラフを作れるでしょうか?

  • excel2013のグラフで・・

    excel2013でグラフを作り、説明ヶ所に図形での吹き出しに説明文字を入れ、それをインターネットに掲載しました。 所がそのグラフに追加で幾つか吹き出しを作りました。excel2013ではきれいに保存されています。 しかし、そのグラフを以前と同じようにコピーし、ペイントでjpgに変換すると、追加した吹き出しが全く入っていません。何度試しても同じです。 追加分の吹き出しの入ったコピーはどうすれば出来るのでしょうか? またペイント使用の他に、グラフをjpg等に簡単に出来る方法があれば、教えて下さい。 よろしくお願いします。

  • Excel2007のグラフ作成,Word2007への貼り付け方について

    Excel2007を用いてグラフを作成し,Word2007へ張り付ける作業をおこなっているのですが,作成したグラフのサイズや,貼り付け後のWordファイルのサイズが大きくなってしまい,頭を悩ませています… Excelで作成したグラフは,行(縦)が2000~4000程度のデータを3列(横)程度使用しています.色は白と黒のみです. グラフを作成したExcelファイルは,200~300KB程度です. このグラフをWordへ「(図)拡張メタファイル」として,10枚程度張り付けています. Wordファイルは10ページ以下です. このとき,Wordファイルのサイズが3Mを超えてしまい,出来れば1M~2M程度に抑えたいのですが,何かファイルサイズを小さくする方法はありませんでしょうか… 言い換えますと,Excelファイルを小さくする方法,もしくはWordファイルへ張り付け方などをご教授いただければ幸いです. よろしくお願い致します.

  • Excel、Wordでの画像の保存について

    bmp画像が複数枚貼ってあるHPがあり、その画像全てをファイルに保存したいと思っています。 この、”サイトに接続し、そこにある画像全てを一枚ずつ順番に保存する”という一連の作業をExcelマクロまたはWordで自動的に行うようにすることはできるのでしょうか。 bmpファイルが貼ってあるページはExcelやWordではありません。 当方Excel2000、Word2000を使っています。 方法をご存知の方いらっしゃいましたらぜひともよろしくお願いします。