• 締切済み

エクセルで作成したグラフの元データを消してしまいました

エクセルで作成したグラフの元データが必要になり、データを確認したところ、◆元のデータを削除していたことが判明しました。 ↑↑↑↑↑ グラフオブジェクトをコピーして新たなエクセルファイルにまとめていたのですが、元データで表を作成することが必要になりデータの保存場所を確認したところ、データを削除していることが判明しました。 元々のナマデータのファイルは名称変更を繰り返した上、削除してしまったのでもう探し出すことが不可能です。また、プリントアウトした紙もありません。 グラフオブジェクトから元データで表示させてみても、既に存在しないファイル名が保存されるだけで数値がわかりません。 ◆平均と誤差を使ったグラフなのでせめて数値だけでも知りたいと思っています。 ◆グラフが表示されているので、何らかの形で保存しなおすことが出来るのではないかと思い、質問しています。 どなたかアドバイスをよろしくお願いします!!

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.4

こんにちは。Wendy02です。 >このマクロからはY誤差範囲は表示されないのでしょうか? 残念ながら、この件は、当分時間が掛かりそうです。たぶん、出せるだろうという期待はできるのですが、今のところ、いろいろ試してみてはいるのですが、その範囲を取り出すことが出来ません。

s_a_r_a_h
質問者

お礼

Wendy02さま ◆年末年始のお忙しい期間中に、Excelにお時間を割いていただき 本当にありがとうございました。 やはり、Y誤差範囲は無理そうなのですね。 ◆もう一度ナマデータの取り直しも検討してみます。。 もし、万一、Y標準誤差の取り出し方がわかりましたあかつきには ご一報下さい。 しかし、平均値がわかったので今後も何かあったら利用できるのではと思い、大変感謝しています。 ありがとうございます。 s_a_r_a_h拝

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんにちは。Wendy02です。 以下は定型文ですが、私は、いつもこのように書いています。 -------------------------------------------------------------- ※ 標準モジュールへの取り付け方 Alt +  F11 (Altを押しながらF11)を押すと、Visual Basic Editor 画面が出てきます。 次に、メニューの[挿入]-[標準モジュール]と開けて、クリックすると、画面が現れますので、前述のコード(Sub ChartGetData() ~ End Sub) までを貼り付けて、 Alt + Q で、画面を閉じます。 -------------------------------------------------------------- 次に、実行に関しては、 -------------------------------------------------------------- ※マクロの実行の仕方 当面、Visual Basic Editor 画面を閉じたら、Alt + F8 を押しますと、窓の中に、「 ChartGetData 」という名前が出てきますから、グラフのあるシート上で、そのマクロ名の文字を二回クリックをすればよいです。 -------------------------------------------------------------- たぶん、マクロをお使いでなかったら、それひとつだけですが、もし多くある場合は、[マクロの保存先]を「作業中のブック」にすると、見やすくなります。 先ほどのAlt+F8の窓のところで、マクロの名前を、クリック一回すると、マクロが選択され、[オプション等]のボタンが、アクティブになりますから、[オプション]をクリックして、ショートカットを取り付けてもよいとは思います。 なお、一瞬の間に、データは取り出されてしまいます。また、マクロを実行して、そのマクロのあるブックに1つの[ChartData]というシートしか作られません。すべて、そこに保存されます。  

s_a_r_a_h
質問者

お礼

自分で作成した見本ファイルから平均値のデータを救出することが出来ました。 ありがとうございました!! ・・しかし、Y誤差範囲は出てきませんでした。 このデータ形式で保存したファイルからY誤差範囲の値を救い出すのはやはり無理なのでしょうか。。。 お忙しいところ本当にたびたび申し訳ありません。 よろしくお願い致します。

s_a_r_a_h
質問者

補足

こちらに書いてあった通りにマクロを実行してみたところ、 平均値のデータを救出することができそうです。 見本に作成したファイルから あっという間に平均値データが救出されました 本当に感謝しています!!  ただ、残念ながら、Y誤差範囲のデータが見当たりませんでした。 ずうずうしい確認だとは思うのですが このマクロからはY誤差範囲は表示されないのでしょうか? それともデータ的に無理な状況ということでしょうか? 何度も伺って本当にすみません。確認できたらと思っています。 よろしくお願い致します。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。#1のWendy02です。 埋め込み型グラフで、ソースの元のブックのデータを削除してしまった棒グラフを、取得するマクロです。掲示板の一般的な質問の中では、グラフ関係が一番難しいです。 こちらで、元のソースブックで棒グラフを作り、Y誤差表示をつけ、新しいブックにコピーしてから、元のブックを削除し、架空になったグラフのリンク先を抹消して試しました。バージョンは、Excel2003と2000で調べられております。 >元データの表示を見ると範囲では「複雑なため表示できません」 この表示の覚えがあるのですが、今は、再現できていないので、もしかしたら、うまくいかないかもしれません。一度、試してみてください。だめな場合は、また再び考えます。 新しく掲示を起こす必要はありません。私は、だいたい、2ヶ月ぐらいは、サポートしています。ただ、最初の1週間目は、補足側に書いて、その後、お礼側に書いていただけると、こちらがPCの前にいる限りは、メールが届きますので、一両日に対応できます。補足ですと、対応が遅れます。 このマクロの仕様: 最初に、ChartData というシートが作られ、そこにデータが書き込まれます。データがすでにあれば、その下にデータが書き加わります。 '---------------------------------------------------------------- '基本的には、このマクロは、「標準モジュール」に入れてお使いください。 '---------------------------------------------------------------- Sub ChartGetData() 'ver2634245.00 '埋め込み型グラフからデータを取得するマクロ  Dim acSheet As Worksheet  Dim sh As Object  Dim shFlg As Boolean  Dim ch As Object  Dim NumOfRows As Integer  Dim sr As Variant  Dim cnt As Integer  Dim i As Long  'グラフのあるシートをアクティブにしてください。  Set acSheet = ActiveSheet  For Each sh In ThisWorkbook.Worksheets  If sh.Name = "ChartData" Then    shFlg = True    Exit For  End If  Next sh  If shFlg = False Then   'ChartDataというシートが作られます。   ThisWorkbook.Worksheets.Add   ActiveSheet.Name = "ChartData"  End If  acSheet.Select  If acSheet.ChartObjects.Count = 0 Then   MsgBox "このシートには、グラフとして認識できるものはありません。", vbInformation   Exit Sub  End If  For Each ch In ActiveSheet.ChartObjects   cnt = ch.Chart.SeriesCollection.Count   NumOfRows = UBound(ch.Chart.SeriesCollection(1).Values)      With Worksheets("ChartData")    i = .Range("A65536").End(xlUp).Row    If i > 1 Then i = i + 2    If .Cells(i, 1).Value = "" Then     .Cells(i, 1).Value = ch.Name    End If    .Cells(i + 1, 1).Resize(NumOfRows).Value = _    Application.Transpose(ch.Chart.SeriesCollection(1).XValues)        For Each sr In ch.Chart.SeriesCollection     .Cells(i, cnt) = sr.Name     .Cells(i + 1, cnt).Resize(NumOfRows).Value = _     Application.Transpose(sr.Values)    cnt = cnt + 1   Next sr  End With Next ch Set acSheet = Nothing End Sub

s_a_r_a_h
質問者

お礼

Wendy02さん、面倒な内容にも関わらず 丁寧な回答をありがとうございます。 ただ、webページなどを参考に上を試して見たのですが PCに関する知識がほとんどないためか うまくいきません。 補足の部分に記入してみたのですが、何か処理のうまくいかない原因でお気づきの点を教えて頂けないでしょうか? 年末年始でお忙しいところ本当に申し訳ありません。どうぞよろしくお願いいたします。

s_a_r_a_h
質問者

補足

面倒な内容にも関わらず 本当に丁寧な回答をありがとうございます。 グラフの処理ってすごく大変なことなんだと泣きながら実感している状態です。 しかし、マクロを使ってみることでデータが救えるかもしれないということで光が見えた気分です。 ◆処理したいデータは手元にないのですが、早速、処理方法を確認しようとエクセルデータを作ってみました。 ◆ただ、今まで◆簡単にしかソフトウェアを使用したことがなく 回答頂いた内容のうち、マクロの部分がどこからどこまでかがわかりません。「Dim acSheet As Worksheet」以下最後まででしょうか? 以下の方法やってみたのですがうまくいきません。 どこの部分が原因かお気づきの点をご指摘いただけますでしょうか? よろしくお願いします。 参考にしたwebページ;エクセルでVBを使ってマクロを作る http://www.zecc.jp/question02_04.html 1.コピーしたグラフオブジェクトのみを保存したファイルを開く 2.[ツール]→[マクロ]→[Visual Basic Editor] 3.[挿入]→[標準モジュール] 4.表示されたマクロ見本用.xls-Module1(コード)の広い部分に回答部分のDim acSheet As Worksheet 以下をコピー&ペーストで貼り付ける クローズボックスで閉じ、元のエクセルファイルを開きなおす。 ↑↑ 上の様に操作してみましたが新たなシートは現れません。 根本的な設定の変更など必要なのでしょうか 回答お待ちしています。 よろしくお願い致します。

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

こんばんは。 グラフの場合は、そのグラフの種類と、Excelのバージョンが必要になると思います。時々、出てくる質問で、たぶんマクロで取り出せたと思います。しかし、もう少し情報が必要です。私の経験では、この両方の情報がないと、うまくいかなかった覚えがあります。

s_a_r_a_h
質問者

補足

早速、回答ありがとうございます。 途方に暮れていたので何らかの反応があった事がとても嬉しいです。 グラフは棒グラフです(集合縦棒グラフ)。 しかし、要素は1つなので1つずつのカラムが3本の状態になっています。また、上側にのみY標準誤差をつけてあります。 元データの表示を見ると範囲では「複雑なため表示できません」となり、また、系列で見ると既に存在しないファイルのファイル名とシート、セルの場所が表示されています。 エクセルのバージョンですが、 当時、◆エクセル97とエクセル2000、2002とでデータをやり取りしていたためどのようにお答えしたらよいかわかりません。 現在、使用しているのはエクセル2003ですがどこを見たらお答えできるでしょうか? なお、◆本当に申し訳ないのですが、1月4日までデータの拡張子などを確認をすることができません。 質問を再度立ち上げたほうがよいでしょうか? 本当に困っているのでこの後の確認方法もぜひ知りたいと思っているのですが。。。 どうぞよろしくお願い致します。

関連するQ&A

  • エクセルのグラフから元のデータを知りたい

    エクセル2002を使っています。 ある表から折れ線グラフを作ったファイルがあります。しかし、そのグラフを作った表を紛失してしまい、グラフを作った元のデータがわかりません。グラフから「元のデータ」を選択しても当然参照できません。 グラフからですと細かい数字は読み取れなくて困っています。 グラフのみからそのグラフの元のデータを数値として知る方法はありますか。

  • エクセルでグラフの元データがどこかわからない

    エクセルでグラフ作成し、元のデータを変えようとしたが、元のデータのワークシートを表示できません。 どうやったらいいか教えてください。

  • EXCELグラフ作成

    EXCELグラフについて EXCELでグラフを作成すると通常左にデータ数値、下に時間数値が表示されますが、下の時間数値はそのままにして左のデータ数値を右に表示させることはできないでしょうか?データ期間が長いため左に表示されるとみずらくなってしまいます。誰かご存知の方教えてください。

  • Excelグラフでの、データとデータテーブルの関係

    Excelで売上のグラフを作成しました(折れ線グラフ) 元の表は、各グループの売上高とグループ計の売上高が表示されています。         06/03  06/04 …… 営業Aグループ  5    6  …… 営業Bグループ  7    5  …… 営業グループ計 12    11  …… 業務Cグループ  6    4  …… 業務Dグループ  4    8  …… 業務グループ計 10    12  …… 作成するグラフは、グループ計の数値のみのグラフを作成します。 しかし、詳細が分かるように、そのグラフにデータラベルをつけ、データラベルには元の表全てを表示させたいのです。 できれば見やすいようにオブジェクトではなく、グラフシートとしてグラフを作成したいのですが、その場合今回のようにグラフとデータラベルを別々のものを表示(指定)させることは可能でしょうか。 分かりづらい説明でしたら申し訳ありませんが、よろしくお願いします。 使用環境:WindowsXP/Excel2000

  • エクセル グラフの元データはどこ!?

    こんばんは。土日も深夜もなくエクセルと格闘中でございます。 どなたか、どうか、お助けください・・・。 エクセルの達人?と思われる人から送られてきたエクセルファイル  ・Exel 2000で、マクロ設定がYesで有効、無効にできる程度のセキュリティ   がっかっています 完全に文章とグラフで仕上げられた美しい報告書です。 ですが、データをいじって修正したいのに、ファイルのどこを さがしても、元データらしきシートも表もないのです。  ファイルはこれだけメールで送信されてきて、フォルダ内に  他に何もリンクしているファイル・シートもないのですが、 元データはどうやったらいじれるのでしょう???? エクセルのグラフといえば、単純に集計表を作って、それから グラフ化するのですが、元となる表は別シートなどに普通あるかと 思うのです。 ですが、この報告書、達人すぎて何一つ元データや表にあたるものが 見当たりません。 ●エクセルのマクロ設定によって?恐らく元データ表をグラフに変換  してあるか?、、、私の知らない高度なテクニックをご存知の方! ●ぜひ、グラフしかついていない、マクロ設定のファイルのどこに  元データが隠れているのか?  どうやったら元データを表レベルで修正できるのか? 教えてください!どうかよろしくお願いいたします。

  • エクセルのグラフについて

    非常に初歩的な問題と思われますが、エクセル2003で売上高と販売個数が一緒になったデータをもとに棒線グラフを作成したら、Y軸売上高の数値に対して、販売高の数値が異常に低いためグラフ上で確認できないのです。 目視で確認できるまで売上高と販売個数をグラフ上に表示させるためにはどのような設定が必要でしょうか?

  • エクセルのグラフ作成に関して質問です。

    エクセルのグラフ作成に関して質問です。 エクセルで添付した画像のグラフを作成しました。 要望として、用紙1枚にデータ(数値)とグラフを入れるようにしました。 その為、データを折り返しています。 グラフを作成する上でグラフ上にある折り返したデータでは、グラフを作成することが出来ませんでした。 別シートに折り返しをしていないデータを別途作成し、そのデータを元にグラフを作成しています。 希望は叶えられているのですがすっきり出来ません。 グラフ上にある折り返しをしているデータだけで、グラフを作成することか可能でしょうか、出来るのであれば教えて頂きたいと思います。 希望は、添付した画像にこだわりません。 ただしデータも見やすく、グラフも入れてもシート1枚で完了し、印刷した際用紙一枚に全て収まるようにしたい。

  • エクセル グラフ作成!!

    エクセルのグラフ作成に関してしてご相談です。 現状グラフを作成する際、元データを1行中に作成しないとグラフ 作成が出来ませんが、2行以上の元データに関してのグラフ作成の やり方を教えて下さい。 例:カレンダーの数値をグラフ化する 下記はヤフーのブリーフケースにこんな場合は如何でしょうか? といったエクセルのファイルを載せました。 http://briefcase.yahoo.co.jp/bc/koffee220/vwp2?.tok=bcUNN8HBUZk.2vCI&.dir=/80df&.dnm=%a5%a8%a5%af%a5%bb%a5%eb%a1%a1%a5%b0%a5%e9%a5%d5%ba%ee%c0%ae.xls&.src=bc

  • エクセルのグラフ作成に関して質問です。

    エクセルのグラフ作成に関して質問です。 エクセルで添付した画像のグラフを作成しました。 要望として、用紙1枚にデータ(数値)とグラフを入れるようにしました。 その為、データを折り返しています。 グラフを作成する上でグラフ上にある折り返したデータでは、グラフを作成することが出来ませんでした。 別シートに折り返しをしていないデータを別途作成し、そのデータを元にグラフを作成しています。 希望は叶えられているのですがすっきり出来ません。 グラフ上にある折り返しをしているデータだけで、グラフを作成することか可能でしょうか、出来るのであれば教えて頂きたいと思います。 希望は、添付した画像にこだわりません。 ただしデータも見やすく、グラフも入れてもシート1枚で完了し、印刷した際用紙一枚に全て収まるようにしたい。 前の質問に画像を入れる忘れました。改めて質問します。

  • Excel グラフのデータラベルについて

    Excelのグラフのデータラベルについて質問です。 Excel2007にて、縦棒グラフを作成し、データラベルを表示させています。 そのデータラベルに条件付き書式のような設定はできますでしょうか? ・データラベルにやりたい設定:指定の数値以上の場合は赤くにする グラフ作成用の元データには、条件付き書式を適用させる事ができたのですが、 その設定をそのままグラフのデータラベルに反映する事はできないようなので、 何かいい手はないものか、と思いご相談させて頂きました。 マクロは使った事がありませんが、もしそれを使ってできるのであれば、 挑戦してみようと思っております。 どうぞよろしくお願いいたします。

専門家に質問してみよう