[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『色つきセルの列ずらしの足し算』(ばばば)
B列に1,2,3,4,5,6,7,8,9....
と並んでいるとしてそのうちの黄色で色付けした、たとえば、
3,4,8,9....
に相当するD列の和を計算で求めたいです。
よろしければお願いします。
< 使用 Excel:Excel2010、使用 OS:Windows8 >
その色付けは表示形式で行っているのか条件付き書式で行っているのかどちらだろうか? (ねむねむ) 2016/05/26(木) 09:25
表示形式でホームのフォントから黄色を選んびました。
手作業で色付けをして、それを足し合わせるのは関数を用いれないかと思いやってみましたが、うまくいかなかったので質問させていただきました。
よろしくお願いします。
(ばばば) 2016/05/26(木) 09:29
本件、実は、関数処理でもマクロ処理でも「ある程度」できるんですが、限界付になります。 例えばセルにある色が塗られていて、それに基づいて計算がなされ結果が表示されているとします。
その状態で、どこかのセルの色を変更した。−−−>このままではマクロ処理でも数式処理でも、再計算がされません。 どこかのセルの状況を変化させたときにはじめて再計算され、結果が新しくなります。
そういう前提で、『GET.CELL(63』を検索ワードにしてググってみてください。 (学校内の全文検索でもたくさんの記事が出てきます)
まずは、そういったページを参考にして取り組まれてはいかがでしょう。
(β) 2016/05/26(木) 09:43
そもそも関数は「値」に対する処理で「書式」に対する処理はできまへん
なのでVBAか4.0マクロ関数を使うか?ですな。 あと数式でないけど、検索でやるとか。
ちなみに、色付けでなく計算対象となるB列セルに対してC列になにか入力する。 ってのならできるよん。 (GobGob) 2016/05/26(木) 09:44
オートフィルタで黄色セルをフィルタリングしてSUBTOTAL関数という手もあります。 タイトル行がいりますけど。 (コナミ) 2016/05/26(木) 09:49
Gob Gobさん、
ありがとうございます。根本から考えを改めて、考え直します。
コナミさん、
ありがとうございます。タイトル行をつけてフィルタリング機能でやってみます。
(ばばば) 2016/05/26(木) 10:36
Dim ctr As Long, c As Range If TypeName(Selection) = "Range" Then If Selection.Count <> 1 Or Selection.Column <> 2 Then MsgBox "B列のセルを1つ選択して再実行してください": Exit Sub Else MsgBox "B列のセルを1つ選択して再実行してください": Exit Sub End If MsgBox "選択されたセルと同一色のセルと同行のD列を集計します" For Each c In Range("B1").Resize(Cells.SpecialCells(11).Row) If Selection.Interior.Color = c.Interior.Color Then ctr = ctr + c.Offset(, 2).Value Next c MsgBox ctr End Sub (mm) 2016/05/26(木) 10:36
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.