Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7982 / 13644 ツリー ←次へ | 前へ→

【35721】教えてください ??? 06/3/10(金) 22:12 質問[未読]
【35723】Re:教えてください ponpon 06/3/10(金) 23:04 発言[未読]
【35726】Re:教えてください ??? 06/3/11(土) 9:06 お礼[未読]
【35727】Re:教えてください ponpon 06/3/11(土) 10:12 発言[未読]

【35721】教えてください
質問  ???  - 06/3/10(金) 22:12 -

引用なし
パスワード
   EXCELのシートに緑とか黄色とか色が塗ってあったとして、(塗りつぶし)
で、範囲選択してボタンを押すと緑が〜個、黄色が〜個みたいに表示させるようにしたいのですがどうすればいんですか?

【35723】Re:教えてください
発言  ponpon  - 06/3/10(金) 23:04 -

引用なし
パスワード
   ▼??? さん:
>EXCELのシートに緑とか黄色とか色が塗ってあったとして、(塗りつぶし)
>で、範囲選択してボタンを押すと緑が〜個、黄色が〜個みたいに表示させるようにしたいのですがどうすればいんですか?

こんばんは。
後で検索するためにも、質問の題名は、中味が分かるものにした方がいいかも。

こんな感じでどうでしょうか?

範囲を選択して実行してください。
シート2にカウントして書き出します。

Sub test()
  Dim myDic As Object
  Dim myR As Range
  Dim r As Range
  Dim i As Long
  Dim A As Variant, B As Variant
  
  Set myDic = CreateObject("Scripting.Dictionary")
  Set myR = Selection
  For Each r In myR
    myDic(r.Interior.ColorIndex) = myDic(r.Interior.ColorIndex) + 1
  Next
  A = myDic.keys
  B = myDic.Items
  With Sheets("Sheet2")
    For i = 0 To myDic.Count - 1
     With .Cells(i + 1, 1)
        .Interior.ColorIndex = A(i)
        .Offset(, 1).Value = B(i)
     End With
    Next
  End With
End Sub

【35726】Re:教えてください
お礼  ???  - 06/3/11(土) 9:06 -

引用なし
パスワード
   今試してみましたが上手くいきました。
ありがとうございました。

【35727】Re:教えてください
発言  ponpon  - 06/3/11(土) 10:12 -

引用なし
パスワード
   おはようございます。
ミスがありました。


>Sub test()
>  Dim myDic As Object
>  Dim myR As Range
>  Dim r As Range
>  Dim i As Long
>  Dim A As Variant, B As Variant
>  
>  Set myDic = CreateObject("Scripting.Dictionary")
>  Set myR = Selection
>  For Each r In myR
>    myDic(r.Interior.ColorIndex) = myDic(r.Interior.ColorIndex) + 1
>  Next
>  A = myDic.keys
>  B = myDic.Items
>  With Sheets("Sheet2")
    .Cells.Clear  ’追加
>    For i = 0 To myDic.Count - 1
>     With .Cells(i + 1, 1)
>        .Interior.ColorIndex = A(i)
>        .Offset(, 1).Value = B(i)
>     End With
>    Next
>  End With
>End Sub

7982 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free