dポイントプレゼントキャンペーン実施中!

エクセルで、
特定の数値以上を入力した時、
自動的に赤丸をつける方法があれば、
教えてください。

A 回答 (6件)

No.5です。

一応、「既に○が付いたセルに再入力しても正しく○が表示、非表示される。」ようにしてみました。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sh As Shape
On Error Resume Next
Shapes(Target.Address).Delete
If Target.Value > 10 Then
Set sh = Shapes.AddShape(msoShapeOval, _
Target.Left, _
Target.Top, _
Target.Width, _
Target.Height)
With sh
.Line.Weight = 2#
.Fill.Visible = msoFalse
.Line.ForeColor.SchemeColor = 10
.Name = Target.Address
End With
ActiveCell.Activate
Else
Shapes(Target.Address).Delete
End If
End Sub
    • good
    • 0
この回答へのお礼

わざわざ作っていただきありがとうございます。

これを元に目的のものができそうです。

本当にありがとうございました。

2006-3-22 9:31

お礼日時:2006/03/22 09:31

とりあえず、以下のマクロをVisualBasicEditoを使ってSheet1とかSheet2に書き込めばお望みの動作をします。

ここでは、10以上の数字を入力するとそのセルの周りに赤い楕円が表示されます。でも、これだと数字以外の文字列を書いても○がついちゃったり、いったん○が付いたセルに10以下の数字を入れても○は消えません。そのような処理を追加するとだんだん複雑になってきてしまいます。(これらの問題の解消方法がお分かりの方、いらっしゃいましたら教えてください。)

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value > 10 Then
Shapes.AddShape(msoShapeOval, _
Target.Left, _
Target.Top, _
Target.Width, _
Target.Height).Select
Selection.ShapeRange.Line.Weight = 2#
Selection.ShapeRange.Fill.Visible = msoFalse
Selection.ShapeRange.Line.ForeColor.SchemeColor = 10
ActiveCell.Activate
End If
End Sub
    • good
    • 0

#1&2です。


マクロについて全くやったことのない方でははっきり言って簡単ではありません。
作ってあげるにも質問文の内容ではセルの配置や○の付けたい場所などもわからずできませんし、他の方法で代用するのが無難な気がします。
マクロになると実行のタイミングや他人に渡す場合のデジタル署名などかなりいろいろな検討が必要です。
近くに詳しい人がいれば要望を伝えながら作ってもらうことができるかもしれませんが。。。
    • good
    • 0
この回答へのお礼

たびたびご丁寧な返答ありがとうございます。

簡単ではなさそうですね。

とりあえず、マクロにチャレンジしてみます。

12:06

お礼日時:2006/03/20 12:06

赤丸だとVBAを組むしかないのでは?


セルの塗りつぶしや、文字の書式(フォント・色)等でいいなら
「書式」「条件付き書式」で可能です。
元の状態を考えれば4通りの書式設定が可能です。
http://office.microsoft.com/ja-jp/assistance/HP0 …
    • good
    • 0
この回答へのお礼

返答ありがとうございます。

VBA?マクロ?等で、
簡単にできるようでしたら、
入力内容を教えてもらえるとありがたいです。

もしくは、参照HPアドレスでもかまいません。

11:17

お礼日時:2006/03/20 11:17

セル内の文字列を変更することはマクロを使わないとできません。


単純に条件付き書式では駄目なのでしょうか。
○ではなくでセルか文字の色を変えることになってしまいますが。。。
    • good
    • 0
この回答へのお礼

返答ありがとうございます。

条件付書式をやってみましたが、
やはりよい状態にはならないですね。

マクロ、ですか。
簡単にできますでしょうか?

11:15

お礼日時:2006/03/20 11:16

A列に数値、B列に赤丸を付けるとするならば、


=IF(A1>=80,"●","")
とB列に打ち込めばできると思います。
上の式の場合80以上で●がつきます。
しかし、B列の文字色を赤に変えておく必要があります。

この回答への補足

ご返答ありがとうございます。

説明不足でした、すいません。

入力したセル内の数値自体に
赤丸(線で構成されるもの)をつけたいのですが、
可能でしょうか?

補足日時:2006/03/20 09:51
    • good
    • 0

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