アプリ版:「スタンプのみでお礼する」機能のリリースについて

A1からA10までの中で「赤字」と「青字」のセルの合計だけをA11に反映させたいのですが、どのようにすればよいでしょうか?
どなたかお分かりでしたら是非教えてください!

A 回答 (4件)

はじめまして。


マクロを使用するのであれば、
以下(-----内)をコピペして下さい。

'--------------------------------------

Sub Macro1()

 Sheets("sheet1").Cells(11, 1) = 0
Y=0

 Do Until y = 10

  If Sheets("sheet1").Cells _
(1+y,1).Font.ColorIndex _
  = 3 And 5 Then

Sheets("sheet1").Cells(11, 1) = _
Sheets("sheet1").Cells(11, 1) + _
Sheets("sheet1").Cells(1 + y, 1)

End If

y = y + 1

Loop

End Sub

'---------------------------------------

部分的に説明すると

Sheets("sheet1").Cells(11, 1) = 0
これはセルのA11をクリア

Sheets("sheet1").Cells(1+y,1).Font.ColorIndex
これはセル内のフォント色

をしてます。

よく分からない場合は補足でも
くださいね。
    • good
    • 0

エクセルはセルの書式設定などの情報でデータを処理するのは苦手です。


なので、"色"で判別するのではなく、色分けの規則性で判別させるのが望ましいです。

"どうしても"というのであればマクロならできると思いますが、
私もまだまだ勉強中でご回答できません。

赤字と青字のセルはどうやって分けられているのでしょうか?
何か規則性があればそれで判別し、合計できるのですが・・・。
(例えば0以下なら赤、0より大きければ青など)

ランダムであれば色分けするより、
作業列を隣に作ってそのセルに区別できる
文字や数値を入れたりして分けた方が良いと思います。
    • good
    • 0

もし、赤字、青字になる数字が一定の規則で決められているのであれば、それを条件式の中に組み込んで数式を立てることも可能ですが、単に文字色のみを条件に使うというのであれば、とりあえず下記の方法でできます。



1)挿入→名前→定義で、名前を適当に決めて(例えば「文字色」)、参照範囲の欄に
=GET.CELL(24,Sheet1!G6)+NOW()*0
と入力する
2)B列を作業列として、B1に
=文字色
と入力してB10までコピー。赤文字の所には3、青文字の所には5が表示されると思います。
3)「「赤字」と「青字」のセルの合計だけをA11に反映させたい」が赤青両方合わせた合計ということであれば、
=SUMIF(B1:B10,3,A1:A10)+SUMIF(B1:B10,5,A1:A10)
で良いと思います。前半が赤の合計、後半が青の合計になります。

B列は表示させたくなければ、B列右クリック→表示しないで非表示にしても良いと思います。

なお上記の数式を入力した後に、A列の文字色を変化させた場合、F9キーを押すなどして再計算しない限り、B列の数値は変化しませんので注意して下さい。

GET.CELL関数については下記を
http://www.moreexcellent.com/excel/tips/color.htm

上記ページには載っていませんが、「24」は先頭文字の色を指定する引数です。
(下記「印刷されるページ総数を取得」の解説参照)
http://www2.odn.ne.jp/excel/waza/print.html#SEC12

参考URL:http://www.moreexcellent.com/excel/tips/color.htm,http://www2.odn.ne.jp/excel/waza/print.html#SEC12
    • good
    • 0

VBAを使われるかどうかで変わりますが、まずはA1~A10


程度ということなので
A列の赤と青のセルの隣(B列)に1を入れるそしてA11に
=SUMIF(B1:B10,"=1",A1:A10)
とする。
    • good
    • 0

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

このQ&Aを見た人はこんなQ&Aも見ています