痔になりやすい生活習慣とは?

売上げ表内で、A社は赤、B社は青と売上げ数字が混在しています。
最終的にその月の売上げを社ごとに計算したいのですが、混在しているので、今は手計算しています。
せっかく色分けしているので、赤の数字だけを足す、
青の数字だけを足すということができれば楽なのになぁと思い質問させていただきました。
SUMIF関数などでできるのでしょうか?
エクセルは2003を使用しています。
アドバイスお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

こんにちは。

KenKen_SP です。

通常、関数は値しか扱えません。つまり、フォント色やセル背景色などの書式
を関数で扱うことはできません。では、どうするか? 方法は2つあります。

1. 4.0マクロ関数を使う
  このカテゴリー内で GET.CELL で検索すると過去に類似の質問があります。
  参考にして下さい。

2. マクロ(VBA)を使う
  フォント色で集計を行うツールを作ってみました。お試し下さい。

  【手順】
  1)[Alt]+[F11]で Visual Basic Editor (以下 VBE )を起動
  2)[挿入]-[標準モジュール]
  3)2)で開いたスペースに以下のコードをコピー&ペースト
  4)VBE を閉じる

  【使い方】
  [ツール]-[マクロ]-[マクロ]で実行

'以下コードです。


Sub フォント色別に数値集計()

  Dim rngTARGET As Range
  Dim rngTEMP  As Range
  Dim DIC    As Dictionary
  Dim rngCELL  As Range
  Dim lngC_IDX As Long
  Dim dblNUM  As Double
  Dim vntKEY  As Variant
  Dim i     As Long
  
  'ユーザーに集計範囲を指定してもらう
  If TypeName(Selection) = "Range" Then
    Set rngTEMP = Selection
  Else
    Set rngTEMP = ActiveCell
  End If
  On Error Resume Next
  Set rngTARGET = Application.InputBox( _
    Prompt:="フォント色別に数値を集計します。" _
        & vbCrLf & "集計範囲をマウスで選択して下さい。", _
    Title:="集計範囲の選択", _
    Default:=rngTEMP.Address, _
    Type:=8)
  Set rngTEMP = Nothing
  If rngTARGET Is Nothing Then Exit Sub
  On Error GoTo 0
  
  'フォント色別に集計開始
  Set DIC = CreateObject("Scripting.Dictionary")
  For Each rngCELL In rngTARGET
    With rngCELL
      If .Value <> "" And IsNumeric(.Value) Then
        lngC_IDX = .Font.ColorIndex
        If Not DIC.Exists(lngC_IDX) Then
          DIC.Add Key:=lngC_IDX, Item:=.Value
        Else
          dblNUM = .Value + DIC.Item(lngC_IDX)
          DIC.Item(lngC_IDX) = dblNUM
        End If
      End If
    End With
  Next rngCELL
  
  '結果出力
  On Error Resume Next
  Set rngTARGET = Application.InputBox( _
    Prompt:="集計が終了しました。結果の貼り付け先を指定して下さい", _
    Title:="結果出力", _
    Type:=8)
  If Not rngTARGET Is Nothing Then
    Set rngTARGET = rngTARGET.Cells(1, 1)
    i = 0
    Application.ScreenUpdating = False
    For Each vntKEY In DIC.Keys
      With rngTARGET
        With .Offset(i, 0)
          .Font.ColorIndex = vntKEY
          .Value = "FONT COLOR:= " & vntKEY
        End With
        .Offset(i, 1).Value = CDbl(DIC.Item(vntKEY))
      End With
      i = i + 1
    Next vntKEY
  End If

Terminate:
  On Error GoTo 0
  Application.ScreenUpdating = True
  Set rngTARGET = Nothing
  Set DIC = Nothing

End Sub
    • good
    • 4

#3 です。

すみません。#3 のコードで、

  Dim DIC    As Dictionary



  Dim DIC    As Object

に差し替えて下さい。次のような感じになります。

Sub フォント色別に数値集計()

  Dim rngTARGET As Range
  Dim rngTEMP  As Range
  Dim DIC    As Object

以下 略

開発時のなごりです、、気にしないで下さい。
    • good
    • 0
この回答へのお礼

すごい!!できました。ありがとうございます。
感激です!!
これから計算がとっても楽になります。
本当に本当にありがとうございました。

お礼日時:2005/11/02 00:14

えーっとひょっとして、#1の人が言うのと違って、データが、A社のものなのかB社のものなのか色でしか判別できないってことですか?


だったら多分マクロを使わないと無理です。
大体、そういう形式だとしたら、入力も非常に面倒だと思いますので、この機会に、#1さんの言っているような形にすることをお勧めします。
私の記憶の範囲内では、セルに設定されているフォントの色のデータを取得できる関数はなかったと思います。
マクロを組むなら比較的簡単なマクロで実現できますがやってみますか?
あと、ひょっとしたら、4.0マクロ関数ってやつに何かあるかもしれません。これについては、私の知識を超えていますので、どなたかエキスパートの方よろしくお願いします。
    • good
    • 0
この回答へのお礼

ありがとうございます。おっしゃるとおりです。色だけの区別です。面倒なのですが、いろいろと使い続ける理由がありまして。。。
フォントの色のデータを取得できる関数はないとのことですので、関数で計算させるのは無理なのでしょうね。。。
マクロを組むというのは考えておりませんでした。
私には難しいかもしれませんが、勉強してみます。ありがとうございます。

お礼日時:2005/11/01 20:46

A社とB社とで、文字の色を変えているのでしたら、


素直にSum関数+If関数+配列で、A社、B社で条件指定して合計をとれば良いのではないでしょうか?

例)
会社名 売上
A10
B15
B20
A15
A10
B15

A社合計:{=SUM(IF(A2:A7="A",B2:B7))}
B社合計:{=SUM(IF(A2:A7="B",B2:B7))}

あと、蛇足ですが文字の色分けも条件付き書式を利用されても良いかと思います。
    • good
    • 0
この回答へのお礼

ありがとうございます。
A社、B社とわけて入力しているわけではなく、A社の売上げは赤色文字、B社の売上げは青色文字としているので、うまくいかないんです。
おっしゃっているような表の作り方であれば簡単にできるのですよね。。。作り変えたいのはやまやまなのですが、社から渡されている管理フォームなので勝手に変えられないので困ってます。
でも、勉強になりました。ありがとうございました。

お礼日時:2005/11/01 20:44

このQ&Aに関連する人気のQ&A

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

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

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qエクセルで文字色がついているセル数をカウント

エクセル初心者です。
エクセルセルに
佐藤
鈴木
青山
渡辺
と入力されてあって佐藤と鈴木の文字の色が青だった場合文字色(青)がついているセルをカウントし,あるセルに2と表示することはできるのでしょうか。条件付書式や検索と思いましたがわかりません。よろしくお願いします。

Aベストアンサー

 質問者様お使いのエクセルのバージョンが不明なので何がアレですが
いちおう 2000 で作成した経験からアドバイスさせていただきます。


>文字色(青)がついているセルをカウントし,

1 残念ながらマクロを使わないと,ご希望のことは難しいようです。
  以下に手順を記しますので参考にしてください。

(1) [ツール]-[マクロ]-[VisualBasicEditor](またはAlt + F11)で
 VBE画面にします。

(2) VBE画面上で[挿入]-[標準モジュール]を選択します。
 するとコードウィンドウが出ますので、以下のコードを記します。
 (コピー&ペーストでもOK)

----------------------------------------------------------------
Function SpecialCell(targetRange As Range, _
intColor As Integer) As Integer
'赤は3,緑は4,青は5,黄は6
Dim myCell As Range

For Each myCell In targetRange
If myCell.Font.ColorIndex = intColor _
Or myCell.Interior.ColorIndex = intColor Then
SpecialCell = SpecialCell + 1
End If
Next
End Function
----------------------------------------------------------------

(3) 元のワークシートに戻って、カウント結果を表示させたいセルに、

赤字のカウントは =SpecialCell(A1:E5,3)
青字のカウントは =SpecialCell(A1:E5,5)
黄字のカウントは =SpecialCell(A1:E5,6)

 などとすればOKです。

 ただし、フォント色が黄でセル色が青などというのは、どちらにも
カウントされてしまうので注意が必要です。


 ☆参考:ブックの標準カラーパレットのインデックス番号
  (VBエディタのヘルプにて「ColorIndex」を検索、参照した)

  1 黒   2 白   3 赤   4 黄(薄)緑 5 青
  6 黄   7 桃色  8 水色  9 茶色   10 緑
  11 紺    (濃い緑)

以下 ~ 56 まであるようです。



2 別解(参考)
-----------------------------------------------------------
Function ColoredCell(rngArg As Range, rngSample As Range) As Long
For Each c In rngArg
If c.Interior.ColorIndex = rngSample.Interior.ColorIndex Then
ColoredCell = ColoredCell + 1
End If
Next
End Function
----------------------------------------------------------------
 使う際には =ColoredCell(A1:A10,A5) といったように、第1引数は
調べたい範囲、第2引数には指定する色の(サンプル)セルを当てる。
 ※SUMIF 関数の併用も可



2 実は、マクロを使わない方法があります。
  5~6年程前に、何処かで教わった記憶があります。

  色を判定する式(=GET.CELL(**,**))をブックに登録、判定結果を
 表示したいセルに、登録した式の定義名で記述する。
  その判定結果を SUMIF や COUNTIF 関数の引数として再利用する。

 以下は、その手順です。

 (1) 色を判定する式を登録
   メニューバー「挿入」→「名前」→「定義」名前の定義画面にて
  「参照範囲」欄に
   「=GET.CELL(検査の種類を指定する番号,判定したいセル番地)」
   名前欄に式の名前を(「文字の色」や「セルの色」等)付けて
  「追加」→「OK」で登録完了
☆検査の種類を指定する番号とは?
20→フォントは太字か否か?を判定
24→文字フォントの色を判定
63→セルの塗りつぶし色を判定
 
 なお、後から書式を変更しても結果が自動的には更新されないので、
NOW 関数を組み込み「F9」キーで更新させた方が良いようです。
 例「=GET.CELL(**,**)+NOW()*0」(0を足している為、値に影響なし)

 (2) 判定した結果を表示させる
   判定結果を表示したいセルに「=定義した名前」という式を入力
  すると色の種類すなわち色の番号を判定結果として表示してくれる
   色の番号(Excel のヘルプでカラーインデックスを参照できる)
   例☆黒字(無指定)=>0
     赤      =>3
     青      =>5
     緑      =>10
     薄緑     =>4
     ※その他も、実際に試してみれば結果は分かるはず

 (3) 判定した結果を、SUMIF や COUNTIF関数の引数として利用する。

 言葉で説明するのは非常に難しくこれで理解していただけるかどうか
自信がありませんが、この、色の判定式を登録してしまうという方法は
Excel97 から Excel2002までのバージョンで活用できることは確認済み
です。 もちろんこれも SUMIF 関数との併用(数字として計算する)が
可能です。
 実際のサンプルファイルを見ていただければいいのですが、なかなか
良い方法が思いつきません。

 Excel2007 で読み込んでも反映されましたが、2007でどう作成するの
かは、残念ながら 2007 での作成経験がないので説明できません。



 ところで、この OkWave には Office 系ソフト専門のカテゴリもあり
ます。 そっちの方が詳しい人が多いと思うので、今後は使用ソフトの
バージョンも併記してそちらで質問されるようにした方が解決が速いと
思われます。

http://okwave.jp/207/218/c232.html

 なお、老婆心ながら、その場合の複数カテゴリにわたる(多重投稿)
マルチポストには気をつけましょう。

参考URL:http://miyahorinn.fc2web.com/faq/faq030.html,http://hp.vector.co.jp/authors/VA016119/hajimete/udf1.html

 質問者様お使いのエクセルのバージョンが不明なので何がアレですが
いちおう 2000 で作成した経験からアドバイスさせていただきます。


>文字色(青)がついているセルをカウントし,

1 残念ながらマクロを使わないと,ご希望のことは難しいようです。
  以下に手順を記しますので参考にしてください。

(1) [ツール]-[マクロ]-[VisualBasicEditor](またはAlt + F11)で
 VBE画面にします。

(2) VBE画面上で[挿入]-[標準モジュール]を選択します。
 するとコードウィンドウが出ますので...続きを読む

Qエクセルで塗りつぶし別の合計を出す関数

エクセルで塗りつぶし別(又はフォントの色別)に入力されている数字の合計を出す関数ありますでしょうか?CONTAも同様に
お願いします。

Aベストアンサー

こんにちは。

基本的にExcelでは色を基準にした計算などは出来ません。

色を基準にするの0ではなく数値や文字で処理するようにしてください。

ただこれだと回答になりませんのであまりオススメしませんが方法を紹介します。

その方法は、4.0マクロ関数を使う方法です。
この関数は古いExcelのバージョンで使われていた関数で、97以降のバージョンだとヘルプが無く、いつ使えなくなるか分からないものです。

使い方は参考URLをどうぞ

参考URL:http://www2.odn.ne.jp/excel/waza/name.html#SEC23

Qエクセル・・色の着いたセルの個数を数える関数はある?

エクセルの表内で塗りつぶしされているセルだけを数える様な関数はありますか?
セルには文字や数値は入力されておらず、塗りつぶしているだけです。
よろしくお願いいたします。

Aベストアンサー

こんにちは。

ユーザー定義関数で作ってみました。Ver4 マクロ関数で十分だと私は思いますが、Ver 4 マクロ関数ではケシカランというような方?は、以下のようなVBAでの解決方法が便利かなって思います。

VB Editor の標準モジュールに貼り付けてください。(挿入-標準モジュール)

なお、一般のブックの標準モジュールのユーザー定義関数に、Public キーワードをつけたところで、グローバル関数になるわけではありませんので、もしその点に不安のある方は、マニュアル等で、確認されたほうがよいかもしれませんね。

なお、以下は、引数のインデックスに0を入れると、配列出力するようにしてあります。

'------------------------------------
Function ColorCellCount(範囲 As Range, Optional インデックス As Integer = 1, Optional パターン As Integer = 0)
  Dim myRng As Range
  Dim myIndex As Integer
  Dim myPattern As Integer
  Dim myColor() As Integer
  Dim Ret() As Double
  Dim c As Range
  Dim i As Long
  Dim j As Long
  Set myRng = 範囲
  myIndex = インデックス
  myPattern = パターン
For Each c In myRng
   On Error Resume Next
   If myPattern = 0 Then
     i = WorksheetFunction.Match(c.Interior.ColorIndex, myColor, 0)
   Else
     i = WorksheetFunction.Match(c.Font.ColorIndex, myColor, 0)
   End If
   If i = 0 Then
     ReDim Preserve myColor(j)
     ReDim Preserve Ret(j)
      If myPattern = 0 Then
       myColor(j) = c.Interior.ColorIndex
      Else
       myColor(j) = c.Font.ColorIndex
      End If
      Ret(j) = 1
     j = j + 1
     On Error GoTo 0
     Else
      Ret(i - 1) = Ret(i - 1) + 1
   End If
  Next
  If myIndex <= 0 Then
   ColorCellCount = Ret()
  ElseIf myIndex > UBound(Ret) + 1 Then
   ColorCellCount = Ret(UBound(Ret()))
   Else
   ColorCellCount = Ret(myIndex - 1)
  End If
  Set myRng = Nothing
End Function

ワークシート上での使い方は、

A列
色付き
色なし
色なし
色付き
色付き

=ColorCellCount(A1:A5, 1 )

とすれば、上から数えて、1番目の色のセルの数が出ます。

=ColorCellCount(A1:A5, 2 )
を入れれば、色なしのセルの数が出ます。

=SUMPRODUCT(ColorCellCount(A1:A5, 0 ))

とすれば、全部の合計が出ます。

なお、
=ColorCellCount(A1:A5,1,1)

とすれば、文字の色を数えます。

こんにちは。

ユーザー定義関数で作ってみました。Ver4 マクロ関数で十分だと私は思いますが、Ver 4 マクロ関数ではケシカランというような方?は、以下のようなVBAでの解決方法が便利かなって思います。

VB Editor の標準モジュールに貼り付けてください。(挿入-標準モジュール)

なお、一般のブックの標準モジュールのユーザー定義関数に、Public キーワードをつけたところで、グローバル関数になるわけではありませんので、もしその点に不安のある方は、マニュアル等で、確認されたほうがよいかもし...続きを読む

Q【Excel】 色の一致するセル数をカウントしたい。

こんにちは。

ある条件にあてはまるセルに、書式でセルの色を設定してあります。
いくつかの条件で色分けしてあるのですが、これらのセルの色が「赤」は幾つ、「青」は幾つというふうに、
カウントすることは出来るのでしょうか。

よろしくお願いいたします。

Aベストアンサー

繰り返し何度も出てくる質問です。関数でと考えているなら、直接はできません。
VBAで中身たった1行のユーザー関数を作ればできます。
http://hp.vector.co.jp/authors/VA016119/hajimete/udf1.html
など
Googleで「エクセル セル 色 カウント」などで照会すると似た質問が出る。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1225959
にはCELL関数のことも載っているが、旧いバージョンの関数なので
私は、除外して言ってます。

Q色が付いたセルの合計を出したいのですが…

いつもお世話になります。

エクセル2002を使用していますが、特定の色が付いたセルの個数を数えたいのです。
同時に「色が付いてあるセルを数える」に加えて、「色を付けたら直後、そのセルの個数が数えられる」ようにしたいのです。
「色が付いたセルの引数を数える」というのは分かるのですが、「セルだけの合計」となると分かりません…。

以前にも質問しましたが、結局分からず終いでしたので、改めてお願い致します。

例題)A1~G1を赤で色付けした時に、赤色の付いたセルの個数をA2に出す。
理想とする結果) A2に赤色のセルの合計「7」が出た。

Aベストアンサー

ユーザー定義関数による方法です。

一般の関数のような使い方で、指定した色のセル数をカウント出来ます。
色を変更し、<Enter>等で他のセルに移動した時点で再計算します。

書式: CCount(範囲,色番号(カラーインデックス))
使用例 : CCount(A1:A100,3)   A1:A100範囲の赤色をカウント
(赤=3 ですが、他の色の番号を知るには、後述の GetIndx関数で調べられます。)

これで良かったら、詳しく操作手順を書きますので、新しいブックでテストして
みてください。

VBAコード設定方法
1.Alt + F11 で VBE(Visual Basic Editor)を開きます。
2.VBE のメニューから[挿入] -->[標準モジュール] を指定します。
3.モジュールウィンドウに下記コードをコピーして貼り付けます。
4.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。
5.メニューから[ツール]-->[マクロ]-->[セキュリティ]で「セキュリティレベル」を
 「中」にして[OK]します。

Function CCount(Rng As Range, idx)
Dim R As Range
Dim Cnt As Long
Application.Volatile
For Each R In Rng
  If R.Interior.ColorIndex = idx Then Cnt = Cnt + 1
Next R
CCount = Cnt
End Function

Function GetIndx(Rng As Range)
If Rng.Count > 1 Then
  GetIndx = vbNullString
  Exit Function
End If
GetIndx = Rng.Interior.ColorIndex
End Function

'---------------------------------------
◎ 各色のカラーインデックスを調べる関数(付録)
コード後半は、GetIndx関数は、カラーインデックス番号を調べる関数です。
必要なときに使ってみてください。

使い方例: A1をインデックス番号を調べたい色で塗り潰します。
例えば、セルA1を任意の色で塗り潰し、B1に
 =GetIndx(A1) を入力するとそのカラーインデックス番号が表示されます。

----------------------------------------
※ CCount関数を自動再計算に対応させる設定

 色を変更しただけでは、再計算されませんので Enter等でセルを移動した時点
 で、再計算されるようにします。(シートモジュールに記述)

【 操作手順 】
・この関数を使用しているシートのシート名タブを右クリックして「コードの表示」を
 指定します。
・開いたコードウィンドウに下記コードをコピーして貼り付けます。
・Alt+ Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  Calculate
End Sub

ユーザー定義関数による方法です。

一般の関数のような使い方で、指定した色のセル数をカウント出来ます。
色を変更し、<Enter>等で他のセルに移動した時点で再計算します。

書式: CCount(範囲,色番号(カラーインデックス))
使用例 : CCount(A1:A100,3)   A1:A100範囲の赤色をカウント
(赤=3 ですが、他の色の番号を知るには、後述の GetIndx関数で調べられます。)

これで良かったら、詳しく操作手順を書きますので、新しいブックでテストして
みてください。

VBAコード設定方法
1.Alt +...続きを読む

Qエクセルでセルの色番号を表示する方法

エクセルでセルの色番号を表示する方法が下記URLに記載されているのですが下記の方法にそったやり方でB1のセルではなくA2に色番号を表示する方法を知りたいのですがどなたか教えて頂けますか?

http://miyahorinn.fc2web.com/faq/faq030.html

Aベストアンサー

>A1のセルの背景色を色番号をA2に表示させたいのですが
=GET.CELL(63,!$A1)+NOW( )*0
にすれば、1行目の色番号となります。
=GET.CELL(63,!$A$1)+NOW( )*0
とすれば、常にA1セルと云う事になります。

追記 4.0マクロの機能ですが
背景色を変えただけでは、計算は実行されません。
再計算(F9)を押すか、シート上のセルで何らかの入力作業を行った際に
更新されます。

Q色付セルの集計(エクセル)

エクセルで、セルに色を付け、
そのセルだけの合計を出すような
数式はあるのでしょうか?

宜しくお願い致します。

Aベストアンサー

Excelの基本的な機能ではできないと思います。ユーザー定義関数を作ってみました。

 =Total_Color(集計範囲,色を指定するセル1,色を指定するセル2・・・)

のように使います。集計範囲は矩形範囲のみの対応です。

例えば、集計範囲がA1:C10で、A2の色とB3の色のどちらかと同じ色のセルの合計なら
 =Total_Color(A1:C10,A2,B3) とします。

また、色の付いたセルを全て集計する場合は =Total_Color(集計範囲) とします。
色を指定するセルに『色を付けていないセル』を指定すれば色の付いていないセルを合計します。

ツール→マクロ→Visual Basic Editor でVBE画面に移り、挿入→標準モジュールで標準モジュールを挿入し、そこに下記コードを貼り付けます。


Public Function Total_Color(rgArea As Range, ParamArray rgColor())
  Dim rg As Range 'セル
  Dim chk As Integer '色の照合チェック
  Dim TTL As Double '合計値

  If UBound(rgColor) = -1 Then
    '集計する色を指定していない場合は、色が付いたセルをすべて集計する
    For Each rg In rgArea
      If rg.Interior.ColorIndex <> xlNone Then
        TTL = TTL + Val(rg.Value)
      End If
    Next
    Total_Color = TTL
  Else
    '色の指定がある場合
    For Each rg In rgArea
      For chk = LBound(rgColor) To UBound(rgColor)
        '指定した色(複数)と一致したら合計する
        If rgColor(chk).Interior.ColorIndex = rg.Interior.ColorIndex Then
          TTL = TTL + Val(rg.Value)
          Exit For
        End If
      Next
    Next
    Total_Color = TTL
  End If
End Function

Excelの基本的な機能ではできないと思います。ユーザー定義関数を作ってみました。

 =Total_Color(集計範囲,色を指定するセル1,色を指定するセル2・・・)

のように使います。集計範囲は矩形範囲のみの対応です。

例えば、集計範囲がA1:C10で、A2の色とB3の色のどちらかと同じ色のセルの合計なら
 =Total_Color(A1:C10,A2,B3) とします。

また、色の付いたセルを全て集計する場合は =Total_Color(集計範囲) とします。
色を指定するセルに『色を付けていないセル』を指定すれば色の付いていない...続きを読む

Qエクセルで打ち込んだ数字を自動で別シートに表示したい

エクセルでセルに打ち込んだ数字を自動で別シートに表示できる方法があれば、教えてください。

例えば、シート1のC1に5を打ち込んだら、シート2のD2にシート1で打ち込んだ5が自動で表示される。

また1列すべてを自動で表示させる場合、一つのセルの時と違いがありましたら教えてください。よろしくお願いします。

Aベストアンサー

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コピー&リンク貼り付けを使うと便利です。

例)例)シート1のC1~C5に何かを入力したら、
  シート2のD2~D7にシート1で打ち込んだものが自動で表示される

  シート1にあるコピー元のセルを範囲選択して、
  シート2のD2の上で「右クリック」⇒「形式を選択して貼り付け」
  をクリックします。

  そして出てきた小さな画面の左下にある「リンク貼り付け」という
  ボタンをクリックすると完成です。
  試してみてください。。

  念のためにリンク貼り付けを図解しているURLを載せておきます。
  参考にしてみてくださいね。。
  http://www.geocities.jp/office_inoue/excel/eq21.htm

こんばんは。
入力したセルの値を合計とかでなくて、
純粋に別のシートに自動的に表示したいのであれば、
以下の方法があります。

1.1つのセルだけの場合
例)シート1のC1に5を打ち込んだら、
  シート2のD2にシート1で打ち込んだ5が自動で表示される

⇒シート2のD2のセルをアクティブにして「=」を入力
 した後、シート1のC1をクリックする。
 そうするとD2のセルに「=Sheet1!C1」と表示され、値が自動的に
 表示されるようになります。

2.1列全てコピーしたい場合。
  コ...続きを読む

QexcelのCOUNTIF関数で、『範囲=色のついたセル』に設定したいです。

excelのCOUNTIF関数で、『範囲』の設定で、『ある一定の範囲内の色のついたセル』を
範囲として選択したい場合、どのように操作したらよいでしょうか?

たとえば、A1~A30までのセルの中で、A9、A10、A18、A19、A20、A29、A30のセルが赤で、
そのうちのA10、A18、A29、A30に「○」の記号が入っていて、その○の数を調べたい場合です。

ご存知の方、よろしくお願いいたします。

Aベストアンサー

ワークシート関数ではセルの「色番号」は取得できません。
マクロ(ユーザ定義関数)が必要です。

ユーザ定義関数で「背景色が赤で、文字列が○のセル」を数えることも可能ですが、質問は「例えば」で書かれていそうなので、あまりきっちりとマクロを書くと修正が必要になりそうです。
そこで汎用的に使えそうな「手抜きバージョン」で回答します。

まず以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい。

Function Cidx(ByVal trg As Range) As Integer
 With trg.Cells(1, 1).Interior
   If .ColorIndex = xlNone Then
     Cidx = 0
   Else
     Cidx = .ColorIndex
   End If
 End With
End Function

次にVBE画面を閉じてワークシート画面に戻り、
 =Cidx(A1)
の式を1行目の空いている列(例えばB列)に入力し、30行分下にコピーします。するとA列のセルの「色番号」が表示されます(背景色なしは0)
ただしセルに値を入力した後で背景色を変更した場合は、ユーザ定義関数の結果は自動的に変わりません。Alt+Ctrl+F9で強制再計算させる必要がありますのでご注意ください

後は別の関数で赤色(色番号=3)で「○」印があるセルをカウントします
 =SUMPRODUCT((A1:A30="○")*(B1:B30=3)*1)

ワークシート関数ではセルの「色番号」は取得できません。
マクロ(ユーザ定義関数)が必要です。

ユーザ定義関数で「背景色が赤で、文字列が○のセル」を数えることも可能ですが、質問は「例えば」で書かれていそうなので、あまりきっちりとマクロを書くと修正が必要になりそうです。
そこで汎用的に使えそうな「手抜きバージョン」で回答します。

まず以下のマクロをALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい...続きを読む

Qエクセルでの指定文字 カウントについて

エクセルで並んだデータでの指定した名前だけの個数をカウントするにはどうすればいいのでしょうか?

山田 高橋 佐藤
高橋 梅田 赤田
 西 山田 梅田
佐藤 山田 梅田

名前が並んだデータで「高橋」という名前が何個あるのかをカウントしたいのですがどうすればいいのでしょうか?

Aベストアンサー

 データは入力されているセルの範囲を「A1:C4」とすれば、

=COUNTIF(A1:C4,"高橋")


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング