
No.4ベストアンサー
- 回答日時:
ユーザー定義関数を使った一例です。
<以下を標準モジュールに記入>
Function IntColor(ByVal argRng As Range) As Integer
'指定したセル(第1引数)の塗りつぶし色を返す関数
Application.Volatile
IntColor = argRng.Cells(1, 1).Interior.ColorIndex
End Function
Function CountIntColor(ByVal argRng As Range, ByVal argIntColor As Integer) As Long
'指定した範囲(第1引数)で指定した塗りつぶし色(第2引数)のセル個数を返す関数
Dim myCell As Range
Application.Volatile
CountIntColor = 0
For Each myCell In argRng
If myCell.Interior.ColorIndex = argIntColor Then
CountIntColor = CountIntColor + 1
End If
Next myCell
Set myCell = Nothing
End Function
<使い方>
A1:A10の範囲でA1と同じ塗りつぶし色のセルが何個あるか?
=CountIntColor(A1:A20,IntColor(A1))
No.3
- 回答日時:
前の回答がちょっとつめたかったのかなぁと反省したので
コードを提示します。
このコードをどこに書くか(コピペ)するか
対象範囲によりどこを修正するか
結果を表示する場所をどう変更するか
は勉強してください。
もっと短くももっと汎用的にも書けるのですが
修正しやすく初歩的に書いたつもりです。
Option Explicit
Option Base 1
Sub 色別件数()
Dim i As Integer
Dim j As Integer
Dim k As Integer
Dim l As Integer
Dim 有無 As Boolean
Dim x As Integer
Dim 色(10) As Integer
Dim 件数(10) As Integer
Dim 色数 As Integer
For i = 1 To 5 '1行目から5行目までの繰り返し
For j = 1 To 4 '1列目から4列目までの繰り返し
x = Cells(i, j).Interior.ColorIndex '対象のセルの色をxに代入
有無 = False 'その色が前にあったか検知するため変数
For k = 1 To 色数 '今までにその色が出てきたかを見つける
If 色(k) = x Then
有無 = True
l = k
End If
Next
If 有無 = True Then
件数(l) = 件数(l) + 1 '見つかったときその色の件数に1加算
Else
色数 = 色数 + 1 '見つからなかったとき新しい色を追加
色(色数) = x
件数(色数) = 1 '件数を1にする
End If
Next
Next
'見つかった色数分セルに表示(11行、4列目から下に色数分件数表示)
For i = 1 To 色数
Cells(i + 10, 4).Interior.ColorIndex = 色(i)
Cells(i + 10, 4) = 件数(i)
Next
End Sub
あとはよろしく
No.2
- 回答日時:
学生さんらしいので頑張って勉強しましょう。
VBAを使います。
やり方は
範囲内をなめまわします。for nextの入れ子
別のシートに色別テーブルを用意します。
なめまわしている中で色を色別テーブルにあるかを調べます
あった時1を加算
ないとき色別テーブルに新しい色を追加して1とする
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル関数の質問 5 2022/04/20 09:46
- Excel(エクセル) エクセルで”入力シート”の文字書式の変更を”出力シート”で同じ文字書式で印刷したいです。VBA希望 4 2023/04/24 11:07
- Excel(エクセル) エクセルの関数について 5 2023/04/30 17:24
- CGI VBAで条件から範囲を指定して色を塗る方法を知りたいです 1 2022/06/30 16:05
- Excel(エクセル) Excel 数式を使用した条件付き書式が、一つのセルにしか反映されない 3 2022/06/08 23:20
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:02
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:00
- Excel(エクセル) セルに特定の色が出た時だけ、式を発動させたい 4 2022/06/17 10:32
- Excel(エクセル) マクロ/VBAについて教えてください。 10 2022/05/27 12:59
- その他(Microsoft Office) エクセル 表の移動 2 2023/04/05 20:29
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
アクリル絵具とアクリルガッシュ
-
色画用紙に絵を写したい! 学校...
-
Excelの塗りつぶしの色の種類を...
-
色画用紙に色づけ
-
エクセル2000で、セルの塗り潰...
-
緑色と合う色
-
EXCEL 塗りつぶしの色...
-
IE6でクリックした後の色の変化...
-
PHPでの色の混ぜ方
-
メルカリで新品未使用の コピッ...
-
パワーポイントでフォントの色...
-
Adobe RGBとsRGBのbit数の違い...
-
Excelの配色が勝手に変わります
-
色鉛筆でのベタ塗り
-
ハイターにつけると色が抜けて...
-
Inkscapeの鉛筆ツールが…
-
●adobe color cc●CMYKで色を作...
-
素材の色: JIS慣用色の黄色と...
-
アクリルガッシュの表面につい...
-
某大手スーパーの看板の色
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルのポインターの色を変...
-
パワーポイントでフォントの色...
-
これって色分けられませんか? ...
-
PowerPoint2003で重ねた図の色...
-
エクセルのセルの色が突然変った
-
エクセルに挿入した図の一部を...
-
Excelの参照元の色がつかない
-
類似色と近似色の違い分かりま...
-
道路(アスファルト)の色の塗り...
-
access2013でフォームに配置し...
-
Inkscapeの鉛筆ツールが…
-
雷が落ちやすい色ってあります...
-
真っ赤なTシャツの色を落とす(...
-
ユニクロ色落ち
-
ダブルクリックでセルの色を変える
-
某大手スーパーの看板の色
-
ペンキの混色の作り方
-
色画用紙に絵を写したい! 学校...
-
●adobe color cc●CMYKで色を作...
-
Word 2010で「その他の色」を保...
おすすめ情報