ネットが遅くてイライラしてない!?

業務計画の達成度(進捗度)が25%の時は円の1/4を塗り潰した画像。50%の時は円の半分を塗りつぶした画像・・・というように達成度(進捗度)が変化したときに表示される画像を変化させたいのですが、何かアイデアはありませんか?

例えば、学校のテストで60点の時は一重○。80点の時は二重◎。100点で花○というように表示される画像を変化できるようになりませんか?

説明が足りなければ追加しますので宜しくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

>円グラフでも良いのですが、入力した数値によって手間を掛けずに自動で変化してくれるものにしたいです。


例えば、
A1
="進捗度"
B1
="残り"
A2
=75
B2
=100-A2
として
A1:B2の範囲で円グラフを作成
分類名とパーセンテージを表示、
凡例を非表示
にすればA2の値で自動的に変化します。
いったん作成してしまえば、B1の内容は削除して構いません
    • good
    • 0
この回答へのお礼

そうか!気が付かなかった・・・。簡単にできました。回答ありがとうございました。

お礼日時:2006/02/19 14:32

下記のURLにある方法を応用すれば、可能だと思います。


参考例ではリストボックスを引数にしているので、
点数を引数とするなら、一工夫必要ですが。
それ以外ならVBAでしょうか。

参考URL:http://www.officetanaka.net/excel/function/tips/ …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。使えるか試してみます。

お礼日時:2006/02/19 14:30

こんばんは。



> 例えば、学校のテストで60点の時は一重○。80点の時は二重◎。100点で花○というように表示される画像

こっちのほうは以下の関数でいかがでしょう。
C列に点数が入っているものとします。
花丸の代わりに★、60点未満は△になってます。

=IF(C1=100,"★",IF(C1>=80,"◎",IF(C1>=60,"○","△")))
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
花丸と言っている表現はあくまでわかりやすい説明にするためで、目的は入力した数値によって、その隣(もしくはその付近)にある画像を変化させることです。
何かありましたら回答お願いします。

お礼日時:2006/02/16 05:50

>25%の時は円の1/4を塗り潰した画像


こっちの方は円グラフを適当にいらない表示をとって、系列の色を変えるといいような気がします
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
確かに円グラフを使用して「いらない部分の色を白にする」という手間を掛ければ可能です。
ただ、その手間を省くため25%のときは1/4を塗り潰したた画像が自動で表示され、1/2のときは半分を塗り潰した画像が表示されるようにしたいです。
画像でなくても、円グラフでも良いのですが、入力した数値によって手間を掛けずに自動で変化してくれるものにしたいです。
なにか方法がありましたら宜しくお願いします。

お礼日時:2006/02/16 05:56

このQ&Aに関連する人気のQ&A

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

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Q【エクセル】達成率のグラフ作成方法を教えてください

エクセルで達成率のグラフをうまく作成できず、困っております。
下記のような条件なのですが、作成する方法はありますでしょうか。

・小売業で、月度ごとに売り上げ目標に対する達成率のグラフを日刻みで作成したいと考えています。
 (累計がだんだん100%のラインに近づいていく感じ)
・対象の商品は6点で、月度ごとに、品物ごとの売上達成目標が事前に決まっています。
 なお、月度は毎月20日締めです。
 (例えば4月度の期間は4/21~5/20で、商品Aの目標額を1000円とします。)
・売上額は毎日出ます。(4/21の商品Aの売上は70円、4/22日は80円…という感じ)
・月度ごとの目標額は毎回変動します。

また、可能であれば1つのグラフに複数の商品の情報を表示したいと考えていますが、可能でしょうか?
(商品ごとに目標額は違いますが、それぞれ達成率を同じ100%のラインで揃えて表示したいです。)

どうぞご教授お願いいたします。

Aベストアンサー

このような方法もあるという事で。

例えば、C2に「目標額」を入れ、D列に毎日の売り上げ額を入れていきます。
E2に =D2/$C$2とし、少数第2位などにし、下にオートフィル。
F2に =F1+E2とし、「%」にし、下にオートフィルすると達成率の累計が出ます。

・必要な列をCtrlを押しながら選択し、縦棒グラフを作成。

・次に作成したグラフの「累計の系列」を選択し、
「折れ線グラフ」に変更してから、
右クリック「データ系列の書式設定」「軸」で「第2軸」にします。

これで、実際の売り上げ額は縦棒で、達成率は折れ線で
徐々に右上がりになっていく様子が表示されます。

商品全部を入れこむと、繁雑になり過ぎるのでは。

C2の目標額を入れ替える事により、全てが変化します。

QExcelで数字を入れたら対応する図を呼び出したい

いつもお世話になっております。
Excelで複数の地区の管理をしています。
地区には通し番号が付いていますおり、報告書を作るときにその通し番号入力します。
その時にスキャナで取り込んで通し番号を付けてある地図を入っているフォルダから自動的に呼んでくるようにはできないでしょうか?
わかりにくい文章ですみません。
よろしくお願いします。

Aベストアンサー

マクロになりますがいいですか?
このサンプルはA1セルにファイル名(拡張子なし)を入力したらD3セルに指定した画像を貼り付けるものです。

試しに新しいブックを開き「シート名右クリック」→「コードの表示」で開く画面に以下のマクロを貼り付けてください。マクロ2行目~5行目はご自身の環境に合わせて修正が必要です。

Private Sub Worksheet_Change(ByVal Target As Range)
Const trgR As String = "A1" '地図通し番号を入力するセル
Const insR As String = "D3" '挿入画像の左上のセル
Const path As String = "Z:\" 'ファイルの格納フォルダ
Const pic As String = ".jpg" '「.(半角)」+ファイルの拡張子"
Dim shp As Shape
Dim buf As String
  If Target.Address(0, 0) = trgR Then
    For Each shp In ActiveSheet.Shapes '既に表示されている画像を削除する処理
      If Not Intersect(Range(insR), Range(shp.TopLeftCell, _
            shp.BottomRightCell)) Is Nothing Then
        shp.Delete
      End If
    Next
    Range(insR).Select
    buf = Dir(path & Target.Value & pic)
    If buf <> "" Then '入力したファイル名があるかチェック
      ActiveSheet.Pictures.Insert (path & Target.Value & pic)
    Else
      MsgBox "指定したファイルがありません"
    End If
  End If
  Target.Offset(1, 0).Select
End Sub

これはあくまでサンプルですので、実際のシートにあわせてマクロを修正する必要があると思いますが、それはご自身でお願いします。

マクロになりますがいいですか?
このサンプルはA1セルにファイル名(拡張子なし)を入力したらD3セルに指定した画像を貼り付けるものです。

試しに新しいブックを開き「シート名右クリック」→「コードの表示」で開く画面に以下のマクロを貼り付けてください。マクロ2行目~5行目はご自身の環境に合わせて修正が必要です。

Private Sub Worksheet_Change(ByVal Target As Range)
Const trgR As String = "A1" '地図通し番号を入力するセル
Const insR As String = "D3" '挿入画像の左上のセル
Const p...続きを読む

Qエクセル 0や空白のセルをグラフに反映させない方法

以下の点でどなたかお教えください。

H18.1~H20.12までの毎月の売上高を表に記載し、その表を元にグラフを作成しています。グラフに反映させる表の範囲はH18.1~H20.12の全てです。
そのためまだ経過していない期間のセルが空白になり、そこがグラフに反映され見づらくなります。
データを入力する都度グラフの範囲を変更すればいいのですが、うまく算式や設定等で空白や0円となっているセルをグラフに反映させない方法はありますか?

お手数ですが、よろしくお願いいたします。

Aベストアンサー

売上高のセルは数式で求められているのですよね?
それなら
=IF(現在の数式=0,NA(),現在の数式)
としてみてください。
つまり、0の場合はN/Aエラーにしてしまうんです。N/Aエラーはグラフに反映されません。

Qエクセルで多数のシートをまとめる方法

エクセルで10以上あるシートを一発でひとつにまとめる方法はあるでしょうか?

コピー&ペーストを繰り返すしかないのでしょうか…

仕事で明日やらなければならないので、
お分かりになる方、是非教えてください!

Aベストアンサー

まぁ既出回答にもあるように,10数回程度コピー貼り付けすることで,どうという作業ではないとは思います。

さておき。
ご利用のエクセルのバージョンが不明ですが,ご利用のOfficeのバージョンによっては

1.ワードを起動する
2.挿入のファイルからエクセルブックを指定する
3.添付図のようなダイアログが表示されたらラッキー成功です,ブック全体を指定して挿入する
4.Ctrl+Aで全体を選び,コピーして,エクセルの新しいシートに貼り付ける

と一発でできます。
添付図のようにならなかったときは,出来ません。

QExcelで進捗管理

Excelで進捗管理を作ろうしています。
内容は

進捗率を%で表示し、その進捗率にあわせ
グラフを表示させようと思っているのですがうまくできません。
例;進捗率50%  |||||

上記のように縦線を進捗にあわせて表示させたいのです。
どなたかご教授ください。

Aベストアンサー

A1に50%と入力されていて、B1にグラフを出す場合

=REPT("|",B1*100) などでどうでしょう

""の中には別の記号 * など何でも良いですし、*100も適当に調節します。

Qエクセル表中に入力条件に対応した図(jipファイル)を表示したいのですが。。。

エクセル97で保険契約の契約内容入力フォームを作ろうとしています。
指定したセルに入力された内容に対応して、数パターンのメッセージまたは図形を結果のセルに表示させたいと思っているのですが、セルへの図の表示方法が分かりません。
あるセルへの入力結果に対応して図を表示する方法が知りたいのですが。
なるべく簡単単純だとうれしいです。
(文字列の表示はIF関数を使おうと思っています)
よろしくお願いします。

Aベストアンサー

こんにちは

 A1:A10のセル内にそれぞれ一つづつ図が入っているとします。

 まずは名前定義です。

1.Ctrl+F3(メニュー[挿入]-[名前]-[定義]
3.[名前]に Pic と入力
4.[参照範囲]に=INDIRECT($G$1) と入力
5.[OK]ボタンをクリック

 セルG1に A1 と入力しておきます。

 続いて、図のリンク貼り付けです。

1.セルA1を選択(オートシェイプではなく、セルA1を選択)してCtrl+C(コピー)
2.セルH1を選択して、Shiftキーを押しながらメニュー[編集]-[図のリンク貼り付け]
3.数式バーに =Pic と入力

 これで、セルG1に、A2 とか A3 のようにアドレスを入力してみてください。

参考URL:http://www2.odn.ne.jp/excel/

Qセルの内容の条件に応じて図形の表示をしたりしなかったりする

あるセルにオートシェイプ図(たとえば丸の図形)を挿入し、そのセルの値が一定数以上ならば表示され、一定数以下なら表示されないようにしたいのですが可能でしょうか?
可能であればその方法をご教示ください

Aベストアンサー

数値のあるセルに○をいれたいのですね?
そのセルを仮にSheet1のB3だとします。
一定の数を10だとします。
Sheet2のおすきなセルに
=IF(Sheet1!B3>10,"○","")といれて、コピーします。
Sheet1にもどり、Shiftキーを押しながらメニューの「編集」、「図のリンクはりつけ」し、図の書式設定で、「塗りつぶしなし」、「線なし」にします。
これでOKです。

Q複数のエクセルファイルからデータ抽出とまとめる方法について。

500のエクセルファイルがあり、それぞれのエクセルデータのA2からF2までのデータのをまとめた一覧表(1行目は、1枚目のエクセルファイルのA2-F2、2行目は2枚目のエクセルファイルの・・・、という感じでです)のを、新しいエクセルファイルもしくはテキストなどにでも手早く作れる方法をご存知の方、ご教授ください。コピペでやっていますが嫌になってしまいました。。マクロも触っては見たのですが、2枚目のエクセルファイルを2行目に、3枚目のエクセルファイルを3行目になどの方法の解決は思いつかず、挫折しました。よろしくお願いいたします

Aベストアンサー

対象のフォルダをcドライブの「sample」とした場合で回答します。
新規エクセルブックのシート名タブを右クリックし「コードの表示」
右側のエディタエリアに下記コードを貼り付け、実行して下さい。
G列にファイル名が入るようになっています。不要であれば
Cells(rIdx, 7).Value = fName
を削除して下さい。


Sub getA_F()
Const myPath As String = "c:\sample\"
Dim rIdx As Long
Dim fName As String
fName = Dir(myPath & "*.xls")
Do Until fName = ""
Workbooks.Open Filename:=myPath & fName
rIdx = rIdx + 1
Me.Range(Cells(rIdx, 1), Cells(rIdx, 6)).Value = ActiveSheet.Range("A2:F2").Value
Cells(rIdx, 7).Value = fName
Windows(fName).Close
fName = Dir
Loop
End Sub

対象のフォルダをcドライブの「sample」とした場合で回答します。
新規エクセルブックのシート名タブを右クリックし「コードの表示」
右側のエディタエリアに下記コードを貼り付け、実行して下さい。
G列にファイル名が入るようになっています。不要であれば
Cells(rIdx, 7).Value = fName
を削除して下さい。


Sub getA_F()
Const myPath As String = "c:\sample\"
Dim rIdx As Long
Dim fName As String
fName = Dir(myPath & "*.xls")
Do Until fName = ""
Workbooks.Open ...続きを読む

Qエクセル 表を大きく、紙いっぱいに印刷したい

エクセルで表を作りました。
印刷プレビューで確認したところ
用紙に対して表が小さく見栄えがしません。

一つ一ついじればできると思いますが、
簡単に、
用紙いっぱいにフォントも大きくし、表も大きくし、
印刷するやり方はありますか。
教えてください。

Aベストアンサー

CtrlキーとPのキーを同時に押すと「印刷」ダイアログが呼び出せます。その状態でAltキーとWのキーを同時に押すと「印刷プレビュー」が表示されますので、印刷のイメージがつかめます(必ずしもプレビュー通りには印刷されませんが)
印刷プレビュー画面の上にある、設定のボタンを押してあげれば、余白を少なくしたり、拡大縮小印刷をパーセンテージを指定しておこなえたりします。いずれにせよ、プレビューで確認しながら拡大率を決めていけばいいと思います。なお、「拡大縮小印刷」のところに「次のページ数に合わせて印刷をする」というチェックをいれて横1×縦1にしてあげれば自動で拡大縮小印刷ができる場合がありますが、やってみればわかりますが、特に縮小印刷の場合小さくなりすぎたりする場合もあります。

QVBA 実行時エラー1004 rangeメソッドは失敗しました。globalオブジェクトのエラー

始めまして、VBA初心者のものです。
ただいまエクセルでグラフを作成しています。作業自体は単純作業の繰り返しなのでVBAを用いてやりたいのですが、マクロを実行したときに実行時エラー’1004’rangeメソッドは失敗しました。’_global’オブジェクトとメッセージが出て、実行できません。 デバックをすると以下の5行目で黄色のバーが出ていました。自分なりに原因を考えたのですがrangeの関係するところに、Range("A8:A1587,e8:e1587")というような変数を用いないやり方でやると上手くいくので、変数に関する定義がまずいと思うのですが、それ以上の事は分かりません。どなたか、分かる方がおりましたら、よろしくお願いします。また、プログラムは以下のようになります。

Sub 繰り返し()
'繰り返し
Dim s As Integer
For s = 0 To 17
Range("cells(8,1):cells(1580,1),cells(8,s+2):cells(1580,s+2)").Select
Range("cells(8,s+2)").Activate
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("20081216_210647").Range( _
"cells(8,1):cells(1580,1),cells(8,s+2):cells(1580,s+2)"), PlotBy:=xlColumns
ActiveChart.SeriesCollection(1).Name = "=""0810p2x"""
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="0810p2x"
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = "0810p2x"
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "t"
.Axes(xlValue, xlPrimary).HasTitle = False
End With
Next
End Sub

始めまして、VBA初心者のものです。
ただいまエクセルでグラフを作成しています。作業自体は単純作業の繰り返しなのでVBAを用いてやりたいのですが、マクロを実行したときに実行時エラー’1004’rangeメソッドは失敗しました。’_global’オブジェクトとメッセージが出て、実行できません。 デバックをすると以下の5行目で黄色のバーが出ていました。自分なりに原因を考えたのですがrangeの関係するところに、Range("A8:A1587,e8:e1587")というような変数を用いないやり方でやると上手くいくので、変数に関する定義...続きを読む

Aベストアンサー

>ご指摘を受けたところを書き換えて回してみた結果、書き換えた箇所
>でエラーがでます。(実行時エラー’1004’’cells’メソッドは失敗
>しました。’global’オブジェクト)
>しかし、何が原因でエラーになるか自分では分かりません。

≪例1≫
Range(Cells(8, 1), Cells(1587, 2)).Select
上記の例では、RangeとかCellsの上位オブジェクトであるシート名が省略されています。
ActiveSheet.Range(ActiveSheet.Cells(8, 1), ActiveSheet.Cells(1587, 2)).Select
というわけです。
マクロ実行時に、Activeな(Excelで表示されている)シートが上位オブジェクトとして、自動的に認識されます。

≪例2≫
Sheets("Sheet2").Range(Cells(8, 1), Cells(1587, 2)).Select
上記の例では、Rangeのみシート名が記述されています。
Sheets("Sheet2").Range(ActiveSheet.Cells(8, 1), ActiveSheet.Cells(1587, 2)).Select
というわけです。
Activeなシートが、Sheet2の場合はエラーになりません。
しかし、ActiveなシートがSheet2以外の場合、エラーが発生します。
直前に、
Sheets("Sheet1").Select
などとしていれば、ActiveシートがSheet1になっていますから、エラーになります。

Sheets("Sheet2").Range(Sheets("Sheet2").Cells(8, 1), Sheets("Sheet2").Cells(1587, 2)).Select
と書いておけば安心です。
Withステートメントを使えばスッキリ纏めることができます。
With Sheets("Sheet2")
  .Range(.Cells(8, 1), .Cells(1587, 2)).Select
End With

# Sheets("Sheet2")の上位オブジェクトが省略されていることにも気がついてください。

>そこで自分で基礎を勉強したいのですが推薦できる参考書などがござ
>いましたら、教えていただけませんか?
私自身は、入門書程度の雑誌を1冊買っただけです。どれが良いとかはよく分かりません。
「マクロの記録」を活用して、参考コードを取得し、汎用性のあるコードに編集しています。
新しい単語があれば、文字カーソルを単語の上に置き、F1キーを押してVBAのヘルプを必ず見るようにしています。
躓いた時は、Web検索して欲しい情報を得たり、あるいは、こうした掲示板で先輩方のお力をお借りしています。

Excel(エクセル)VBA入門:目次
http://oshiete1.goo.ne.jp/kotaeru_reply.php3?q=4651404
エクセル入門・初級編
http://www.kenzo30.com/excel_kiso.htm

>ご指摘を受けたところを書き換えて回してみた結果、書き換えた箇所
>でエラーがでます。(実行時エラー’1004’’cells’メソッドは失敗
>しました。’global’オブジェクト)
>しかし、何が原因でエラーになるか自分では分かりません。

≪例1≫
Range(Cells(8, 1), Cells(1587, 2)).Select
上記の例では、RangeとかCellsの上位オブジェクトであるシート名が省略されています。
ActiveSheet.Range(ActiveSheet.Cells(8, 1), ActiveSheet.Cells(1587, 2)).Select
というわけです。
マクロ実行時に、Activeな...続きを読む


人気Q&Aランキング