EXCEL - 関数

関数を使って何かやることはそうないのですが…たまに使おうとすると…忘れています。

使ったことのあるものぐらいはまとめていこうかと思います。


あるセルの値を表示

B1と同じ値を取得する

=B1

セルの値の組み合わせて表示

=A1&B1&C1

セルの値の組み合わせ、間に空白を入れて表示

=(A1)&" "&(B1)&" "&(C1)

関数と文字を繋げるのは"&"

これよく忘れる

=A1 & "Hello" & " World"

あるセルの値を見て、表示する値を決めたい

A1セルが"Hello"の場合、"OK", それ以外の場合は"NG"と表示

=IF(A1="Hello", "OK", "NG")

複数条件の場合も、最終的な計算式を見るとややこしく感じますが順番に指定するだけです


複数セルの値を見て、表示する値を決めたい(OR)

=IF(OR(A1="A", A1="B"),"A or B","else")

複数セルの値を見て、表示する値を決めたい

A1セルが"Hello" AND B1セルが"Hello"の場合、"OK", それ以外の場合は"NG"と表示

※IF(OR(A1=X,B1=X)),X,X) でも同じようなことができます。

=IF(A1="Hello", "OK", IF(B1="World", "OK", "NG"))

2つのシートのインナージョンのようなことをしたい

vlookupで別シートが指定できるのでこれを使ってます。
「AシートのA列」と「BシートのA列」に同じ値が存在しており、「BシートのB列」の情報を「AシートのXX列」に表示したいようなケースです。
vlookupで検索して説明見ながら…その都度やってます。

雰囲気は以下のような感じです

シートAの「A1の値」とシートBの「A1の値」を紐付けて同じ値だった場合のシートBの「B1の値」を取得します。

FALSE=完全一致を指定しないと、よくわからないことになるので指定した方がよいです。

=VLOOKUP(A1, SheetB!A:B,2,FALSE)

値がXXのセルの個数を数える

A1からA10に対して値が"OK"のものの個数を数える

=COUNTIF(A1:A10, "OK")

=COUNTIF(A1:A10, "OK")&"個"

文字列を編集する関数

左から指定文字数分とりだす

// A1="1234567890"だとすると以下の関数では、"123456"が取得される
=LEFT(A1, 8)

右から指定文字数分たとりだす

// A1="1234567890"だとすると以下の関数では、"890"が取得される
RIGHT(A1, 3)

指定位置から指定文字数分とりだす

// A1="1234567890"だとすると以下の関数では、"2345"が取得される
=MID(H5,2,4)

数値のフォーマット

数字が大きくなったりして計算結果をフォーマットしたいときは、

=TEXT(A1 * B1 * C1, "#,##0) // 例)1,000

=TEXT(A1 * B1 * C1, "#,##0.00) // 例)1,000.00

セルにエラーを表示させたくない

IFERROR関数というのがあります。

=IFERROR(XXXXXXX,エラー時に表示する数値)

=IFERROR(XXXXXXX,"エラー時に表示する文字列")

// エラーの場合は、0を表示
=IFERROR(TEXT(A1 * B1 * C1, "#,##0.00),0)

// エラーの場合は、"-"を表示
=IFERROR(TEXT(A1 * B1 * C1, "#,##0.00),"-")

LENとLENB
LENは文字数を数える、LENBはバイト数を数える。
LENBのバイト数計算で使われる文字コードは…

このあたりでは、まだはまったことはないけど…しっくりこないな…

この記事が気に入ったらサポートをしてみませんか?