
No.3ベストアンサー
- 回答日時:
D列の適当なセルに「TRUE」と入力されているのであれば、
B1に=IF(D1,1,"")
B2に=IF(D2,COUNT(B$1:B1)+1,"")として以下コピー
ではいかがでしょうか。
まだ完全に式のほうは理解できていませんが、ちゃんと答えがでますので使わせていただきます。ありがとうございました。
無知なものでもう一つ質問したいのですが、=IF(D1,1,"")の式で(もう一つの式も)、D1の後に=XXと書かなくても使えているというのは、どんな意味があるのでしょうか?
No.8
- 回答日時:
配列数式で出来ました。
(データ)A2:A11(第1行目は、使わないこと)
A列 B列
a1
b
c
a2
s
d
a3
a4
c
b
この中でaの行にだけ連番を振ります。
(関数)B2セルに
=IF(A2:A11="a",MAX($B$1:B1)+1,"")
と入れて、SHIFT+CTRL+ENTERキーを押す(3キー同時に押す)。式の先頭と後尾に{と}がつく。配列数式の利用です。
B2の式をB11まで複写する。
(結果)
上記B列の通り。
配列数式ですか。私にはちょっと分からない世界ですが、ちゃんと答えが出ますね。ありがとうございました。
とりあえずは自分の理解できる式を使わせて頂くことにします。しかし、これからの参考にしたいと思います。
本当にありがとうございました。
No.7
- 回答日時:
#3です。
=IF(D2,COUNT(B$1:B1)+1,"")
の意味は
「もしD2が真(TRUE)ならば、B1からB1まで(一番上のセルから当該セルの上のセルまで)の範囲で数値データの数を数えてそれに1を加えた数とする。もし偽(FALSE)であれば空白とする」
ということです。
ご質問のケースの場合、連番以外は記入しないということのようでしたので、COUNT関数を使って数値の記入されているセルの数を数えて、それを連番に使いました。
ですから、もしD列がTRUEでない場合に、B列に入るのが空白ではなく、例えば「0」など数値になる場合は別の方法にしなければなりません。(例えば「-」などの文字列であれば、数値ではありませんので使用できます)
COUNT関数については下記など参考にして下さい。
http://homepage1.nifty.com/kenzo30/ex_kisotyu/ex …
なお
>D1の後に=XXと書かなくても使えているというのは、どんな意味があるのでしょうか?
=IF(D2=TRUE,COUNT(B$1:B1)+1,"")
と入力しても結果は同じで、「D2が真(TRUE)ならば」という意味になります。この場合「=TRUE」は省略することが可能です。
逆に、D2に文字列が入っていることを条件にする場合、例えば、
=IF(D2="(文字列)",COUNT(B$1:B1)+1,"")
などという式を立てる際に、「D2="適合"」の部分は「D2が(文字列)に等しいならば」という意味になりますが、さらに詳しく言えば「『D2が(文字列)に等しい』という条件が真(TRUE)ならば」と言い換えることもできます。
従って、
=IF(D2="適合"=TRUE,COUNT(B$1:B1)+1,"")
と記述しても同じ結果が得られます。
ただ、ここで言う「=TRUE」は「真である」という意味であって「"TRUE"という文字列に等しい」という意味ではありません。
従って
=IF(D2=TRUE,COUNT(B$1:B1)+1,"")
の式は、
=IF(D2="TRUE",COUNT(B$1:B1)+1,"")
とは異なります。
Excelでは標準書式で入力した場合、「TRUE」は「常に真を返す」という前者の意味になります。(「FALSE(偽)」も同様)。
もし書式を文字列にしてから入力したり、「TRUE」の前に「'」を入れて文字列扱いにすると後者の意味になって、計算結果は変わってきますので注意して下さい。
参考URL:http://homepage1.nifty.com/kenzo30/ex_kisotyu/ex …
ご丁寧な説明ありがとうございました。とても参考になりました。
=TRUEは省略できるのですね、これから役立てたいと思います。エクセル関数の質問をするたびに勉強になるので本当に嬉しいです。
No.6
- 回答日時:
>マクロを使えば可能なのでしょうが、関数だけでできる方法があればそうしたいです。
関数による解は、既に多数の回答がなされています。ご参考までにマクロでの解です。標準モジュールに貼り付けて使用します。
Sub MACRO1()
Dim lngEndCell As Long, lngCounter As Long, i As Long
'B列初期化
Range("B:B").ClearContents
'カウンター初期値
lngCounter = 1
'A列で最終行を取得
lngEndCell = Cells(65536, "A").End(xlUp).Row
'最終行までループ
For i = 1 To lngEndCell
'D列がTRUEであれば
If Cells(i, "D").Value = True Then
'B列にカウント値を記入
Cells(i, "B").Value = lngCounter
'カウント加算
lngCounter = lngCounter + 1
End If
Next i
End Sub
ありがとうございます。
関数が無理ならマクロという手段を考えていました。VBエディターを使うなんて高度な技はわかりませんので、ツールのマクロの記録からどうにかやってみようとは思っていました。しかしどうやら関数だけで解決しそうです。
貴重なお時間をありがとうございました。
No.4
- 回答日時:
多分もっとスマートな方法があると思うのですが、一応結果だけはご希望のものが出ましたので…
A列:連番
D列:IFかなにかで条件付けしてTUREを出してある。
そこで
B列は=COUNTA(D$2:D2)
C列には:=IF(B2=B1,"",B2)
と入れるとご希望の結果が出ましたが…
この回答への補足
一行目を使わずに2行目から使えばできるのですね。ちゃんと答えが出ました。
まだ入り口にしかいませんが、関数の奥の深さには驚かされます。同時にとても勉強になります。
ありがとうございました。
ありがとうございます。
関数の初心者ですので、式の内容をまだ理解するに至っておりません。
>B列は=COUNTA(D$2:D2)
>C列には:=IF(B2=B1,"",B2)
これはB1,C1に入力してコピーすれば良いのでしょうか?
正しい答えが出ないのですが…。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel2007での条件付き書式について 6 2023/05/02 10:56
- Excel(エクセル) 【画像あり】A1が●+B1と同じ文字がB列にある+C1と同じ文字がC列にある場合D1に〇を付ける 3 2023/03/09 18:18
- その他(Microsoft Office) ある表(10桝程度)の中に数字が入っています。ダブっている数字を除く数字の合計数の計算方法 5 2023/02/15 11:33
- Visual Basic(VBA) マクロ実行時、自動で背景色を変えたい。 C列にあるチェックボックスをチェックするとB列に「TRUE」 4 2022/11/08 11:14
- Excel(エクセル) 条件付き書式 別のシートで色付けされたセルデータの転記漏れを防ぐ書式を入れたい 4 2022/04/22 06:36
- Excel(エクセル) IFERROR(IF()IF())のような形の構文が作れません 2 2023/02/05 17:51
- Visual Basic(VBA) Excelにて、シート1の行を削除するとシート2のシート1と同じ番号の行も削除したい 3 2022/05/08 04:24
- その他(プログラミング・Web制作) sortの優先キーについて(スプレッドシート) 1 2023/01/17 17:59
- Excel(エクセル) Excelについて A1からA12まで、1月〜12月と入力し、 B1からB12の範囲に、C1とD1に 4 2022/05/26 22:48
- Excel(エクセル) 【条件付き書式】countifsで複数条件を満たしたセルを赤くする方法 2 2023/02/09 23:53
このQ&Aを見た人はこんなQ&Aも見ています
-
条件を指定して連番を振る方法(エクセル)
Excel(エクセル)
-
エクセル グループ毎に番号(連番)を振りたいです。但し、同じデータには同じ番号を振りたいのです。
Excel(エクセル)
-
行に連番をつけたいのですが、空白セルには番号をつけないようにしたい。
その他(ソフトウェア)
-
-
4
【Excel2007】 条件を指定し連番を振る方法
Excel(エクセル)
-
5
Excelで重複データの件数ではなく、何番目かを求める方法
Excel(エクセル)
-
6
EXCELで条件付きの連番を振る方法
会計ソフト・業務用ソフト
-
7
【エクセル】0以外が入力されていれば1を立てる計算式について
Excel(エクセル)
-
8
空白部分に連番の数字を記入したい(Excel)
Excel(エクセル)
-
9
エクセルで文字を含む式に、カンマ(,)をつけるには??
Excel(エクセル)
-
10
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
11
エクセルで特定の列が0表示の場合、その行を非表示にしたい
Excel(エクセル)
-
12
エクセル A表にあってB表に無い値を探したいのですが
Excel(エクセル)
-
13
【エクセル】関数で「A1が0でないならB1を表示」の式
その他(コンピューター・テクノロジー)
-
14
Excel-参照セルが空白の場合、別のセルを参照するには。
Excel(エクセル)
-
15
Excelで、条件と一致する最後のセルを検索したい
Excel(エクセル)
-
16
エクセルで左から、最初に0より大きい値を抽出したい
Excel(エクセル)
-
17
エクセル関数
Excel(エクセル)
-
18
Excelで、あるセルの値に応じて行を自動挿入したい
Visual Basic(VBA)
-
19
Excelの「0」だけ非表示、小数点の0.~は表示したいのですが、どうすればいいのでしょう。
Excel(エクセル)
-
20
エクセルで空白セルを含む列の最終行の値を取得する式を教えてください
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル ドロップダウンリスト...
-
特定のセルだけ結果がおかしい...
-
エクセル
-
エクセルのdatedif関数を使って...
-
【マクロ】アクティブセルの時...
-
【関数】同じ関数なのに、エラ...
-
エクセルの循環参照、?
-
【マクロ】A列にある、日付(本...
-
【マクロ】3行に上から下に並...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】WEBシステムから保存...
-
iPhoneのExcelアプリで、別のシ...
-
【エクセル】期限アラートについて
-
Excelファイルを開くと私だけVA...
-
Excelの新しい空白のブックを開...
-
Excelについての質問です 並べ...
-
マクロ・VBAで、当該ファイルの...
-
VBA チェックボックスをオーバ...
-
派遣会社とかハローワークとか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelファイルを開くと私だけVA...
-
エクセルについてどう関数を使...
-
マクロ・VBAで、当該ファイルの...
-
エクセルのセルに画像は埋め込...
-
エクセルで、一部のセルだけ固...
-
【マクロ、画像あり】A表かB表...
-
エクセルでカウントする
-
【マクロ】コードを少しでも、...
-
VBA_日時のソート
-
エクセルで教えてください。 例...
-
エクセル 月間シフト表で曜日ご...
-
セルの左に余白を付ける
-
エクセル
-
エクセルについて教えてください
-
2枚のエクセル表で数字をマッチ...
-
ExcelのIF関数との組み合わせの...
-
エクセルのファイルのコピーを...
-
エクセルで二つのブックの違い...
-
空白処理を空白に
-
Excelのチェックボックスについ...
おすすめ情報