
No.2ベストアンサー
- 回答日時:
> エクセルにデフォルトで存在する星型のオブジェクト
使用している色をいちいち数値や色名で指定すると煩雑ですので、
数えたい色(例えば赤)の星型をひとつ選択した状態で実行します。
エラー処理はしてませんので、オブジェクトを選択しないで実行すると
エラーになります。
Sub Test1()
Dim shp, Col, C
Col = Selection.ShapeRange.Fill.ForeColor.SchemeColor '(A)
For Each shp In ActiveSheet.Shapes
If shp.AutoShapeType = msoShape5pointStar Then '(B)
If shp.Fill.ForeColor.SchemeColor = Col Then C = C + 1 '(C)
End If
Next
Range("E4").Value = C
End Sub
(A):選択している星型の色を取得しています。
(B):種類がオートシェイプの星形かどうかを判断しています。
(C):星型の色が最初に選択していたものと同じ色ならカウントします。
この回答への補足
本当にありがとうございます。
動作して、数も数えられました。
しかし、大変申し訳ございません。
まるっきりこちらの説明不足なのですが
具体的に申し上げます。
例えばD5~Z5までの間で数えたいのです。
そして、行も三十行くらいあり、
各行で計測したいのです。
行数は毎月変動します。
列も日増しに増えていきます。
計測範囲に関しては、前回説明してくださった中にあったかと思うのですが、当方全くの素人で、まるっきり応用が利きません。
大変申し訳ないのですが、もう一度ご助力いただけましたらさいわいです。
No.4
- 回答日時:
> A5に黄色の星の数
> B5に赤色の星の数
> C5に緑色の星の数
> を表示する
単純に、前回の操作を応用するだけでよいのではないですか?
> 1.A5:A35を赤、B5:B35を青、C5:C35を緑、D5:D35を黄
→ A5:A35を黄、B5:B35を赤、C5:C35を緑
> 2.A5:D35を選択した状態でマクロを実行
→ A5:C35を選択した状態でマクロを実行
No.3
- 回答日時:
#1、2です。
シート上に散在する図形のうち、指定した行にある図形の数をカウントする
場合、その行をチェックするだけではカウントできません。
そのため、1行ごとに全ての図形を参照してその左上角または右下角が対象
行内のセル番地に含まれているかどうかをチェックするか、いったん全ての
図形をチェックしてそれぞれの行番号や色を配列変数に格納しておいてから
行番号や色番号で配分するなどの処理が必要になります。
むしろ、図形ではなく記号としての "★" を利用したほうがよいのでは、と
も思いますが、とりあえず「1行ごとに全ての図形を参照して‥‥」の方法
をとってみました。
> 例えばD5~Z5までの間で数えたいのです。そして行も三十行くらい
使用されている色は、赤、青、緑、黄、の4色と仮定します。
図形の範囲を E5:Z35 と仮定し、A5:D35 に色別の個数を表示する例です。
1.A5:A35を赤、B5:B35を青、C5:C35を緑、D5:D35を黄、に塗りつぶします。
2.A5:D35を選択した状態で次のマクロを実行すると、A5:D35に色別の個数が
表示されます。(のはずです)
Sub Test()
Dim rng, RW, AD, Col, shp, C
For Each rng In Selection
RW = rng.Row
AD = rng.Address
Col = rng.Interior.ColorIndex + 7
For Each shp In ActiveSheet.Shapes
If shp.AutoShapeType = msoShape5pointStar And _
shp.TopLeftCell.Row = RW And _
shp.Fill.ForeColor.SchemeColor = Col Then _
C = C + 1
Next
Range(AD).Value = C
C = 0
Next
End Sub
※どの色にでも対応できるはずですが、「白」または「塗りつぶしなし」は
使わないで下さい。
この回答への補足
本当にご丁寧にありがとうございます。
大変感謝をしております。
そして、誠に申し訳ないのですが
またしてもこちらの説明不足です。
1行の中に3つの☆が入って
A5に黄色の星の数
B5に赤色の星の数
C5に緑色の星の数
を表示する感じです。
(A6...A7...A8...も同様)
成績表を作っておりまして、
一番点数が高かった者のその点数の欄に☆をつけるのです。
だから、オブジェクトの方がよかったのですが
手間であれば、点数の隣に記号の☆を配置する欄を設けて
それをカウントする方がいいかもしれませんね。
いかがでしょうか。
もし、尚ご助力いただけましたら幸甚でございます。
No.1
- 回答日時:
一般機能ではできません。
マクロで次のように記述します。シート全体の中の個数
Sub TEST1()
Range("E4").Value = ActiveSheet.Shapes.Count
End Sub
限られた範囲(例、B5:G20)の中の個数
※左上端が範囲内に入っているオブジェクトを数える例です。
Sub TEST2()
Dim shp, C
For Each shp In ActiveSheet.Shapes
If Not Intersect(Range("B5:G20"), shp.TopLeftCell) _
Is Nothing Then C = C + 1
Next
Range("E4").Value = C
End Sub
オブジェクトの種類を限定して数える場合は、更にその旨の記述が
必要です。
この回答への補足
迅速かつ的確なお返事をありがとうございます。
とても助かります。
エクセルにデフォルトで存在する星型のオブジェクトなのですが
緑、赤、黄で色分けしています。
その限定で数え分けるマクロ(ということなのですね)を
お教えいただけましたら幸甚でございます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PowerPoint(パワーポイント) パワーポイントのアニメーションについて 4 2023/06/14 16:25
- その他(プログラミング・Web制作) Pythonのオブジェクトの関数について 2 2023/05/11 19:15
- JavaScript オブジェクト配列の各メンバを任意の式で評価して、その評価値が最大のオブジェクトを返す関数はありますか 2 2023/05/20 15:02
- Java 複数TBLのオブジェクトを1つの変数(オブジェクト)でまとめて管理したい 1 2022/12/17 00:12
- Visual Basic(VBA) Excel VBA オブジェクトマクロ 使用指定について お詳しい方教えてください。 共通エクセルフ 2 2023/03/14 17:26
- PHP クラス 1 2022/08/08 15:12
- Excel(エクセル) テキストの背後にあるオブジェクトとは 3 2023/01/03 20:22
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- Illustrator(イラストレーター) ワード。グラデーションがうまく行かない。 2 2022/09/28 19:56
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
このQ&Aを見た人はこんなQ&Aも見ています
-
今年はじめたいことは?
今年はこれをはじめたい!ということを教えてください!
-
いちばん失敗した人決定戦
あなたの「告白」での大失敗を教えてください。
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
テレビやラジオに出たことがある人、いますか?
テレビやラジオに取材されたり、ゲスト出演したことある方いますか?
-
今から楽しみな予定はありますか?
いよいよ2025年が始まりました。皆さんには、今から楽しみにしている予定はありますか?
-
エクセルで○や×の図形の集計は出来ますか?
Excel(エクセル)
-
Excelで特定のオートシェイプのみカウントする方法はありますか?
Excel(エクセル)
-
指定範囲内のオートシェイプを数えるには?
Excel(エクセル)
-
-
4
エクセル マクロで、選択している画像の数を数えたい
Excel(エクセル)
-
5
オートシェイプを色別に個数をカウントすることは出来ますか?
Excel(エクセル)
-
6
オートシェイプに名前を付け名前毎に個数をカウントしたい
Excel(エクセル)
-
7
VBAを何回も作り直して、容量が増えた
Excel(エクセル)
-
8
Excelの任意セル上に図形がのっているかどうか?
Excel(エクセル)
-
9
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
パワポで曲がった両矢印の簡単...
-
パワーポイントの表を左90度回...
-
写真を上下2枚ずつ均等に配置
-
エクセルのコメントの引き出し...
-
Excel(エクセル) 2010で画像の...
-
エクセルやワードにおける図の作成
-
パワーポイントで立体を作った...
-
エクセルでの図形の書き方
-
Excelで挿入した矢印を平行に揃...
-
【PowerPoint】塗り設定のコピ...
-
線の長さ
-
パワーポイント 接続ポイント解除
-
エキセルで2重マルを作るには?
-
オブジェクトをカウントする
-
Excel2007で文字の下線の色を変...
-
Excelファイルのサイズがなぜか...
-
EXCELでも、WORD描画キャンバス...
-
Wordのオートシェイプの十字キ...
-
ワードで作図を作るときに,点...
-
パワーポイントで、コピーした...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
パワポで曲がった両矢印の簡単...
-
パワーポイントの表を左90度回...
-
エクセルやワードにおける図の作成
-
エクセルのコメントの引き出し...
-
写真を上下2枚ずつ均等に配置
-
パワーポイントで立体を作った...
-
【PowerPoint】塗り設定のコピ...
-
エクセルでの図形の書き方
-
Excel(エクセル) 2010で画像の...
-
線の長さ
-
パワーポイント 接続ポイント解除
-
オブジェクトをカウントする
-
ワードで作図を作るときに,点...
-
EXCELでも、WORD描画キャンバス...
-
PDFに挿入した図形を丸ごとコピ...
-
図形の移動をカーソルキー(矢...
-
“ここにコピー”が一発で出ません。
-
Excelで挿入した矢印を平行に揃...
-
オートシェイプで90度に折れ曲...
-
エキセルで2重マルを作るには?
おすすめ情報