4/06/2025

Excel。MAP関数はLAMBDAで新しい値を作成しmappingで形成された配列に返します。【MAP】

Excel。MAP関数はLAMBDAで新しい値を作成しmappingで形成された配列に返します。

<関数辞典:MAP関数>

MAP関数

読み方: マップ  

分類: 論理 

MAP関数


MAP(array,lambda_or_array2,…)

LAMBDAを適用して新しい値を作成することにより、配列内の各値をmappingで形成された配列を新しい値に返す

4/05/2025

Access。クエリ。フィールド内のカンマで区切られた文字列を数えるには【count】

Access。クエリ。フィールド内のカンマで区切られた文字列を数えるには

<Access>

会議参加予定フィールド内に「,(カンマ)」で区切られた文字列。


この文字列を数えるには、どのようにしたらいいのでしょうか。


1日目は「町田,成瀬,津田」と入力されていますので、会議参加者数は、3名です。


この3を求めたいわけです。


Excelにエクスポートして、求めてもいいのですが、いちいちExcelにエクスポートするのも、面倒なので、Accessで求めたいわけです。


ExcelもAccessも一発で求めることはできませんが、基本的な考え方は同じです。


フィールド内の文字数から「,(カンマ)」を除いた文字数を引けば、「,(カンマ)」の数が求められます。


求めた数は、区切り数なので、「+1」すれば、「,(カンマ)」で区切られた文字列数を求めることができるというわけです。


Excelならば、

=LEN(B2)-LEN(SUBSTITUTE(B2,",",""))+1

のような、数式をつくるわけです。


Accessでは、クエリで演算フィールドをつかって対応することになりますが、Excelと違うのは、SUBSTITUTE関数が、Accessにはありません。


そこで、Accessでは、Replace関数をつかって、「,(カンマ)」を空白に置換して「,(カンマ)」を除いた文字数を求めます。


なお、文字数を数えるのは、Accessでは、Excelと同じLen関数が用意されています。


それでは、クエリで演算フィールドつくっていきます。


作成タブのクエリデザインをつかいます。


また、テーブルのフィールドはすべて使っています


演算フィールドには、

参加人数: Len([会議参加予定])-Len(Replace([会議参加予定],",",""))+1

と設定します。


では、実行してみましょう。


参加人数を求めることができました。


Excelとの違いは、Replace関数をつかって、置換したことです。

4/04/2025

Excel。動画で紹介。小数点第1位までしか入力できないようにしたい【Decimal Point】

Excel。動画で紹介。小数点第1位までしか入力できないようにしたい

<Youtube>

入力作業。

結構面倒です。


そして、入力ミスを起こりがち。

例えば、小数点第1位まで入力しちゃダメなのに、入れてしまったとか。


それなら、入力作業の前に、小数点第1位までしか入力できないようにしたらいいわけです。


では、どのようにしたらいいのでしょうか。


その方法をご紹介しております。

4/03/2025

Excelのショートカットキー。Ctrl+A~Eまでを紹介【shortcut】

Excelのショートカットキー。Ctrl+A~Eまでを紹介

<ショートカットキー>

作業効率もUPする、知っていると便利なショートカットキー。

Excelのショートカットキー

なお、Excelのバージョンによって多少変わります。

Ctrl+A

全選択



Ctrl+B

太字にする



Ctrl+C

コピーする



Ctrl+D

上のセルを下にコピーする



Ctrl+E

フラッシュフィル

4/02/2025

Excel。ダブらないで1から10までをランダムで並べるにはどうしたらいい

Excel。ダブらないで1から10までをランダムで並べるにはどうしたらいい

<SORTBY+SEQUENCE+RANDARRAY関数>

参加者名簿があります。

ダブらないで1から10までをランダムで並べるにはどうしたらいい

C列の順番には、1から参加者数の10人分である10までの数値をランダムで並べたい。


しかも、1が2回登場するようなことがないように、つまり重複しないようにしたいわけです。


今回は10名なので、自力で振り分けることもできますが、件数が多くなれば、とても大変な処理になってしまいます。


何かいい方法は、ないのでしょうか。


そこで、C2に次の数式を設定してみます。

=SORTBY(SEQUENCE(10),RANDARRAY(10))


この数式で、1から10までの数値をランダムで並べ替えることができました。


使用している関数は、スピル機能対応なので、絶対参照や、オートフィルで数式をコピーする必要はありません。


この数式がどのように動くことで、1から10までの数値をランダムで並べることができるのか、関数を確認していきます。


SORTBY関数は、並べ替えをする関数です。


最初の引数は、「配列」。

2つ目の引数が「基準配列1」なのですが、それぞれ関数をつかっていますので、最初の引数で使用している


最初の引数を使用している関数は、SEQUENCE関数です。連番を作る関数です。

SEQUENCE(10) で、1から10までの連番を設定することができます


まず、重複しない1から10の数値を用意することができました。


この数値をランダムで並べ替える必要があるわけです。


そこで、RANDARRAY関数をつかって、乱数を発生させます。

小数の乱数を発生するので、算出結果が重複することは、まずありません。


この2つの関数をつかって、1から10までをランダムで並べ替えた順番をつくることができたというわけです。


なお、セルをアクティブなどするたびに、再計算されます。


説明の都合で、C列の順番を作成した後に、F列をつくっています。

そのため、F列の結果とC列の結果は合致しませんので、ご了承ください。

4/01/2025

Excel。MAKEARRAY関数はLAMBDA関数を適用して行と列のサイズの計算配列を求めます【MAKEARRAY】

Excel。MAKEARRAY関数はLAMBDA関数を適用して行と列のサイズの計算配列を求めます

<関数辞典:MAKEARRAY関数>

MAKEARRAY関数

読み方: メイクアレイ  

分類: 論理 

MAKEARRAY関数

MAKEARRAY(rows,column,function)

LAMBDA関数を適用して、指定した行と列のサイズの計算配列を返します。