1

教師がさまざまなパラメータに基づいて進捗状況と達成度を監視できるように、Excel 2007 でスプレッドシートを作成しました。

パラメータのルールを作成するために、見事に機能する一連のマクロを使用しました。生徒のスコアを含むセルは、予想されるレベルで進んでいるか、下回っているか上回っているかに応じて色が変わります (黄色、赤、緑 - 元の I知る!!)。

私は現在、スタッフがマスター シート (学年グループのすべての生徒を含む) からコピー アンド ペーストして、特に自分のクラスに関するフィードバックを得られるようにする「ドロップイン」スプレッドシートを作成しようとしています。Excel で各列の異なる色のセルの数をカウントする最も簡単な部分になると思うまで、すべてがうまくいきました。これは xCELLcolor アドインを持っていない限り (私たちにはありません) 数式では実行できないことを知っているので、VBA を使用して非常に単純な CountColor スクリプトを作成しました。

既存のセルの色に基づいて色付きのセルをカウントする数式を適用できるようになりましたが、マスター スプレッドシートからコピーされた色付きのセルをカウントすることはできません。列内のセルの総数である「0」または「29」という答えが得られ続けます!

これは、マスター スプレッドシートがマクロを介してセルの色を割り当てる方法と関係がありますか? Excel は、セルをコピーして「ドロップイン」スプレッドシートに貼り付けると、セルに色があると認識しませんか?

色を手動でフォーマットした列で機能するため、完全に困惑しています! 助言がありますか?

4

1 に答える 1

0

この種のものにはVBAを使用します。次のコードをマスター スプレッドシート内のモジュールに入力します。

Public Function CountColouredCells(rge As Range, colour As Integer) As Long

Dim rge2 As Range
Dim count As Long

For Each rge2 In rge
    If rge2.Interior.Color = colour Then
        count = count + 1
    End If
Next

CountColouredCells = count

End Function

その後、ブック内の他の Excel 関数と同じように使用できます: =CountColouredCells(A4:D12,255)

2 番目の引数は、関心のある色です。255は赤です。マクロを記録し、セルの色を変更してから VBA を見ることで、他のものを見つけることができます。

于 2013-05-09T20:27:50.890 に答える