10/31/2023

Youtube。2023年9月に横棒グラフ縦軸反転などを公開しました。【Youtube】

Youtube。2023年9月に横棒グラフ縦軸反転などを公開しました。

<Excel Office Channel>

ExcelをはじめとしたMicrosoft Officeのテクニックを紹介するYouTubeチャンネルです。

Excel Office Channel

https://www.youtube.com/@ExcelOfficeChannel/featured


【Word】納品書・請求書で必須の自動更新する日付をWordで設定するには、どうしたらいいの。



【Excel】グラフ:横棒グラフの縦軸を反転して表を同じ順番にする




【Excel】0(ゼロ)を除いた最低点を知りたいときは、MINIFS関数の出番です。




【Excel】数値を全角に、しかも三桁区切りのカンマも全角にしたい。


【Word】Excelにはない、拝啓~敬具などの「あいさつ文」を知っていると、社外文書が手早くつくれます。



【Excel・Word・PowerPoint】便利な機能:図の挿入ができる、SmartArtの写真を移動する・サイズ変更するには



【Excel】途中計算など文字や数値を非表示にすることができます。これで、列や行を非表示にしなくても大丈夫です。



【Excel】横長の表で使える。列単位で並べ替えをしたいけど、どうしたらいいの。


【Excel・Word・PowerPoint】図形やグラフのグラデーションの塗りつぶしの設定方法






10/30/2023

Excel。MROUND関数で指定した値の倍数で切り上げたり、切り捨てたりできます。【mround】

Excel。MROUND関数で指定した値の倍数で切り上げたり、切り捨てたりできます。

<MROUND関数>

四捨五入のROUND関数。

切り上げするROUNDUP関数に、切り捨てるROUNDDOWN関数は、有名ですが、MROUND関数という、なかなか便利な関数があります。


このMROUND関数は、指定した値を基準値として、その値の倍数で切り上げたり、切り捨てたりすることができます。

MROUND関数

今回は、5000を基準として紹介します。


B2には、

=MROUND(A2,5000)

という数式を設定してあります。

オートフィルで数式をコピーしてあります。


このMROUND関数は、2つ目の引数である「倍数」を基準値として、それに近いかどうかで、算出値がかわってきます。


A4は2499です。

5000にするには、2501必要ですね。

5000は5000×1と考えられます。


5000×0は0なので、2499は、5000×0のほうが、5000×1よりも近いので、「0」と算出される。

すなわち、切り捨てられたわけです。


これがわかると、

A4は、14000なので、15000に近いので、15000と切りあげることができます。

A3は、12000なので、10000に近いので、10000と切り捨てられます。


このMROUND関数を知らないと、IF関数をつかったり、あれやこれやしなければなりません。

10/29/2023

Excel。VBA。セル内の改行を削除して1行に戻したい。【remove line breaks】

Excel。VBA。セル内の改行を削除して1行に戻したい。

<Excel VBA:Replace関数>

セル内で、Alt+Enterと入力すると、セル内の任意の場所に、改行を挿入することができます。


今回は、その入力されている改行を削除して、元の1行に戻したいわけです。

セル内の改行を削除

しかも、大量なデータが処理対象だとすれば、手作業というわけにもいきません。


そこで、Excel VBAでプログラム文をつくって対応することにします。

Sub 改行削除()

    Dim i As Integer

    Dim row_count As Integer    

    row_count = Range("a1").End(xlDown).Row

    

    For i = 2 To row_count

        Cells(i, "a") = Replace(Cells(i, "a"), vbLf, "")

    Next

End Sub


では、実行して確認してみます。


セル内改行が削除されて、1行に戻すことができました。


では、プログラム文を確認しておきましょう。


宣言文ですね。

Dim i As Integer

Dim row_count As Integer


このあとFor文で繰り返し処理をするので、繰り返し数を代入しているのが、row_countです。    

row_count = Range("a1").End(xlDown).Row



For i = 2 To row_count

    Cells(i, "a") = Replace(Cells(i, "a"), vbLf, "")

Next


Replace関数は、置換することができる関数です。


Alt+Enterの改行は、「vbLf」は、改行のコードナンバーを表しています。

このvbLfを「””」で置換させることで、削除と同じ意味になります。


よって、セル内の改行を削除して、1行にすることができたというわけです。

10/28/2023

Excel。数値の二重階乗を算出することができるのが、FACTDOUBLE関数です。【FACTDOUBLE】

Excel。数値の二重階乗を算出することができるのが、FACTDOUBLE関数です。

<関数辞典:FACTDOUBLE関数>

FACTDOUBLE関数

読み方: ファクトダブル

分類: 数学/三角 

FACTDOUBLE関数

FACTDOUBLE(数値)

数値の二重階乗を算出する 

10/27/2023

Excel。読み込んだ時間が5桁6桁の数値だったので時間にするにはどうしたらいい。【clock】

Excel。読み込んだ時間が5桁6桁の数値だったので時間にするにはどうしたらいい。

<TEXT+TIME+MID関数>

データを読み込んでみたら、時間のデータが、なんと数値になっていた。


しかも、0~9時台は、5桁の数値。

それ以降は6桁の数値として、入力されていることがわかりました。


どうしたら、時間に変更することができるのでしょうか。


C2に設定した数式は、下記のようになります。

=TEXT(TIME(MID(TEXT(A2,"000000"),1,2),MID(TEXT(A2,"000000"),3,2),MID(TEXT(A2,"000000"),5,2)),"h:mm:ss")


数式自体は、長いのですが、やっていることは、同じようなことをやっていますので、一つずつ確認していきます。


MID関数は、指定した文字列から指定した文字数目から、指定の文字数を抽出する関数です。

MID関数の引数に、TEXT(A2,"000000") とTEXT関数をつかっているのは、5桁の場合、つまり0時台~9時台までの場合、頭に「0(ゼロ)」をついかしたいわけです。


数値の前に「0」を付けることはできませんので、表示形式のTEXT関数をつかって、5桁の場合0を付ける作業をしています。

6桁はそのままです。


これで、5桁のデータも6桁にすることができましたので、時・分・秒のデータを抽出しますので、MID関数をつかうというわけです。


あとは、TIME関数で、時・分・秒のデータを結合させれば、完成です。


ただ、今回その外側にTEXT関数を設定しているのは、AM/PM表示になってしまいます。

h:mm:ss形式で表示したかったので、TEXT関数をつかって、表示形式を整えてみました。


そもそも、時間として入力されていればいいわけですが、もし数値だった場合は、手間がかかってしまいます。

10/26/2023

Excel。条件付き書式の条件式に直接日付を使うときはDATE関数をつかいます【format】

Excel。条件付き書式の条件式に直接日付を使うときはDATE関数をつかいます

<条件付き書式+DATE関数>

条件付き書式をつかうと、資料がわかりやすくなるメリットがあります。


例えば、次の表で、2024/1/6日以降のデータをわかりやすくしたいので、対象のデータ全体(行単位)で塗りつぶしたいとします。


では、実際に設定をしていきます。


A2:B9を範囲選択します。


ホームタブの条件付き書式にある、「新しいルール」をクリックします。


行単位で塗りつぶしたいので、新しいルールで数式を設定する必要があります。


新しい書式ルールダイアログボックスが表示されます。

「数式を使用して、書式設定するセルを決定」を選択します。


ルールに数式を設定します。


=$A2>=2024/1/6

あとは、書式を設定します。


OKボタンをクリックしてみましょう。

ところが、この数式だと、うまくいきません。


全部、塗りつぶされてしまいました。


「2024/1/6」だと日付として認識してくれません。


Accessならば「#」で囲みたいところですが、Excelでは「#」で囲むことはできません。


そのため、DATE関数をつかう必要があります。


では、数式を次のように修正します。


=$A2>=DATE(2024,1,6)


これで、完成ですね。


直接、日付を条件式で使うときには、DATE関数が必要になります。


なお、他のセルに、日付を用意してある場合は、セル番地を参照させますので、DATE関数は使わなくても大丈夫です。

10/25/2023

Excelの様々な関数の読み方や引数などを紹介。今回は、VALUE関数~VAR.S関数です。【dictionary】

Excelの様々な関数の読み方や引数などを紹介。今回は、VALUE関数~VAR.S関数です。

<Excel関数辞典:VOL.87>

今回は、VALUE関数~VAR.S関数までをご紹介しております。

Excel関数辞典

VALUE関数

読み方: バリュー  

VALUE(文字列)

文字列を数値に変換する 



VALUETOTEXT関数

読み方: バリュートゥテキスト  

VALUETOTEXT(値,[書式])

値のテキスト表現を返す 



VAR関数

読み方: バリアンス  

VAR(数値1,[数値2],…)

数値群を標本データとみなした不偏分散を算出します 



VAR.P関数

読み方: バリアンス・ピー  

VAR.P(数値1,[数値2],…)

数値群を母集団全体とみなした分散を算出します 



VAR.S関数

読み方: バリアンス・エス  

VAR.S(数値1,[数値2],…)

数値群を標本データとみなした不偏分散を算出します 

10/24/2023

Excel。時系列データから売上予測を算出できるのが、FORECAST.ETS関数です。【Sales forecast】

Excel。時系列データから売上予測を算出できるのが、FORECAST.ETS関数です。

<FORECAST.ETS関数>

FORECAST.ETS関数というのがありまして、一定間隔の時系列のデータから、その先の予測値を算出することができる関数なんです。


表をしました。

FORECAST.ETS関数

A列には、年月入力してあります。


A2は、2023/4/1と入力されていて、それを表示形式で、2023年4月という「年月」としています。


毎月の売上高のデータがB列に入力されています。


2024年1月以降は、まだこれからなので、予測値を算出したいとします。


そこで、登場するのが、「FORECAST.ETS関数」というわけです。

ETSは、「指数平滑法」のことです。


また、数式の引数は、

FORECAST.ETS(目標期日,値,タイムライン,[季節性],[データ補間],[集計])

というようになっています。


C11のFORECAST.ETS関数をつかった数式は、

=FORECAST.ETS(A11,$B$2:$B$10,$A$2:$A$10,1,1,1)

と設定してあります。

オートフィルで数式をコピーしています。


これで、予測値を算出することができるというわけです。


では、数式の引数を確認しておきましょう。

=FORECAST.ETS(A11,$B$2:$B$10,$A$2:$A$10,1,1,1)


最初の引数は、「目標期日」です。

予測値を算出したい期日である、A11の2024年1月を設定します。


2番目の引数は、「値」です。

実績データに該当するので、$B$2:$B$10。

オートフィルで数式をコピーするので、絶対参照も合わせて設定しておきます。


3番目の引数は、「タイムライン」です。

2番目の引数の値の期間なので、$A$2:$A$10。

こちらも絶対参照を忘れずに設定します。


4番目の引数は、「季節性」です。

実績データに季節性がある場合は「1」。

ない場合は「0」を設定します。

今回は、季節性があるということにしましたので、「1」を設定しています。


5番目の引数は、「データ補間」です。

タイムラインである期日にデータがない期間がある場合の処理についてです。


もし不足データがある場合に、「0」と設定すれば、「0(ゼロ)」として算出していきます。


不足データを隣接するデータの平均値を算出して補填するならば「1」と設定します。


毎月のデータが入力されていますので、今後不足のデータが発生した場合平均値で補填しようと考えているので「1」としました。


最後の引数は、「集計」です。

データの集計方法です。平均値で算出するので「1」と設定します。

集計番号は、1が「AVERAGE」。

2が「COUNT」というように番号が割り振られています。

10/23/2023

Excel。何時間後の時刻を、単純な和算で算出できないのでどうしたらいいの。【hours later】

Excel。何時間後の時刻を、単純な和算で算出できないのでどうしたらいいの。

<TIME+INT関数>

Excelは時間計算が苦手というか、少々考えないと算出できないものがあります。


例えば、何時間後の時刻を算出したい場合も、そのうちの一つです。

何時間後

A列には、時刻が入力してあります。


B列には、処理時間が入力されていて、時刻にこの処理時間が経過した時間を終了予定時刻として、算出してあるのがC列です。


C2には、A2+B2としたいところですが、希望するように算出してくれません。


Excelは、日時について、「シリアル値」というのをつかっています。


1日を1としているのがシリアル値です。

なので、単純に処理時間を足してもダメというわけです。


なぜならば、1時間は1/24だからですね。


そこで、C2には、次の数式を設定すると、算出することができます。


=A2+TIME(INT(B2),(B2-INT(B2))*60,0)

B列の処理時間は、シリアル値を考慮して数式を作る必要があります。


TIME(INT(B2),(B2-INT(B2))*60,0) 

を確認しておきましょう。


シリアル値で考える必要があります。

A列が時間なので、B列も時間にしなければいけません。


時間を作ることができる関数が、TIME関数です。


TIME関数の最初の引数は「時」です。

1時間半を1.5というように入力することを考慮して、整数化するために、INT関数をつかっています。


INT(B2)とすることで、「時」を抽出することができます。


2つ目の引数が「分」です。

小数点を抽出したいので、B2の値から、INT(B2)として整数を減算すれば、小数点以下を算出することができます。


3.5-3=0.5


「0.5」が算出されるのですが、これをそのまま「分」としてつかえません。

1時間は60分なので、60を掛けてあげる必要があります。


そのため、「分」の引数を、

(B2-INT(B2))*60

としているわけです。


最後の引数は「秒」ですが、今回は、不要なので「0」と設定します。


これで、何時間後の時刻を算出することができます。

10/22/2023

Excel。FACT関数をつかうことで、数値の階乗を求めることができます。【FACT関数】

Excel。FACT関数をつかうことで、数値の階乗を求めることができます。

<関数辞典:FACT関数>

FACT関数

読み方: ファクト  

分類: 数学/三角 

FACT関数

FACT(数値)

数値の階乗を算出する

10/21/2023

Excel。2023/7/30-8/5にBINOM.DIST関数など紹介したFacebookページのコメントです。【Trivia】

Excel。2023/7/30-8/5にBINOM.DIST関数など紹介したFacebookページのコメントです。

<Facebookページ>

Facebookページに書いた、Excelの豆知識(Trivia)です。

Facebookページ

7月30日

Excel。

BINOM.DIST関数

読み方: バイノム・ディスト 

読み方: バイノミアル・ディストリビューション

BINOM.DIST(成功数,試行回数,成功率,関数形式)

二項分布の確率を算出する 




7月31日

Excel。

BINOM.DIST.RANGE関数

読み方: バイノム・ディスト・レンジ 

読み方: バイノミアル・ディストリビューション・レンジ

BINOM.DIST.RANGE(試行回数,成功率,成功数,[成功数2])

二項分布を使用した試行結果の確率を算出する 




8月1日

Excel。

BINOM.INV関数

読み方: バイノム・インバース 

読み方: バイノミアル・インバース

BINOM.INV(試行回数,成功率,α)

累計二項分布が基準値以上になる最小値を算出します 




8月2日

Excel。

BITAND関数

読み方: ビットアンド  

BITAND(数値1,数値2)

論理積を算出する 




8月3日

Excel。

BITLSHIFT関数

読み方: ビットレフトシフト  

BITLSHIFT(数値,移動数)

ビットを左シフトする 




8月4日

Excel。

BITOR関数

読み方: ビットオア  

BITOR(数値1,数値2)

論理和を算出する 




8月5日

Excel。

BITRSHIFT関数

読み方: ビットライトシフト  

BITRSHIFT(数値,移動数)

ビットを右シフトする 

10/20/2023

Excel。10日締め翌10日払いの日が、土日祝日なら前営業日にするにはどうするの【before the weekend】

Excel。10日締め翌10日払いの日が、土日祝日なら前営業日にするにはどうするの

<WORKDAY+EOMONTH+IF+DAY関数>

支払予定日が、土日祝日だと、だいたい、前営業日に支払いをすることになるわけです。


その前営業日を算出するには、どのように関数を組み合わせたたらいいのでしょうか。


次のケースをつかって説明します。

土日祝日なら前営業日

結論というか、対応した数式をまず、紹介すると、

=WORKDAY(EOMONTH(A6,IF(DAY(A6)<=10,0,1))+11,-1,$E$2:$E$3)

という数式をつくることで、土日祝日ならば、前営業日を算出することができます。


A2の2023/10/3は、10日締めなので、翌月の10日が支払日です。

B2のように2023/11/10が支払日となります。


B2に設定した数式は、

=EOMONTH(A2,IF(DAY(A2)<=10,0,1))+10


この式がベースとなっていきます。


EOMONTH関数は、月末日を算出する関数です。

1番目の引数は、「開始日」なので、A2を設定します。

これで、2023/10/31が月末日です。


2番目の引数は、「月」です。

10日締めなので、当月なのか、翌月の月末なのかという月を算出させる必要があります。

IF(DAY(A6)<=10,0,1))


IF関数とDAY関数をつかって、10日以前なのどうかを判断させています。

10日以前ならば「0」。

そうでなければ「1」とすることで、当月末なのか、翌月末なのかを算出できます。


その日付に「+10」すれば、10日払いの日付を算出することができるというわけです。

もし、25日払いならば、「+25」とすればいいわけです。


だから、EDATE関数ではなくて、EOMONTH関数をつかったというわけです。


さて、算出した日付が、平日ならばいいのですが、土日祝日だった場合、金融機関がお休みなので、前営業日にしたいわけです。


そこで、土日祝日を除くことができるWORKDAY関数をつかって、先程のEOMONTH関数をネストします。

=WORKDAY(EOMONTH(A6,IF(DAY(A6)<=10,0,1))+11,-1,$E$2:$E$3)


WORKDAY関数の最初の引数は、「開始日」です。

これは、先程のEOMONTH関数で算出した数式を設定します。


ただし、先程、10日払いだから「+10」としましたが、前営業日にしたいので、ワザと1日多い「+11」にします。


2つ目の引数は、「日数」なので、これを「-1」と設定することで、前営業日を算出することができます。


この「+1」と「-1」の考え方ですが、前営業日にしたいので「-1」したいわけです。


土曜日の場合は、「-1」すれば金曜日なので、問題はないのですが、金曜日など平日の場合は、その日でいいのにもかかわらず、「-1」されてしまい、前日が支払日として算出されます。

そのため、わざと「+11」と一日多くして、「-1」させるという方法をつかっております。


最後3つ目の引数は、祝日のカレンダーを用意しておき、その日付にも対応するようにしています。


土日祝日が絡んだ場合、前営業日を算出する方法をご紹介しました。

10/19/2023

Excel。FLOOR.PRECISE関数でも整数化することができます。【integer】

Excel。FLOOR.PRECISE関数でも整数化することができます。

<FLOOR.PRECISE関数>

DATEDIF関数と同じように、手入力でないと使うことができない関数がいくつかあります。

今回は、そのうちの一つ「FLOOR.PRECISE関数」をご紹介します。

FLOOR.PRECISE関数

FLOOR.PRECISE関数は、基準値を省略すると、INT関数のように整数化することができる関数です。


セル上で、FLOORまで入力しても表示されません。

関数の挿入ダイアログボックスにも表示されません。


B2には、FLOOR.PRECISE関数でつくった関数を設定してみました。

=FLOOR.PRECISE(A2)


基準値を省略すると、1の倍数になるように切り捨ててくれます。1の倍数ということなので、整数にすることができるというわけです。


Excelには、色々な関数が用意されているんですね。

10/18/2023

Excel。F検定の両側確率を求める時につかうのが、F.TEST関数です。【F.TEST】

Excel。F検定の両側確率を求める時につかうのが、F.TEST関数です。

<関数辞典:F.TEST関数>

F.TEST関数

読み方: エフ・テスト

分類: 統計 

F.TEST関数

F.TEST(配列1,配列2)

F検定の両側確率を算出する

10/17/2023

Excel。手早く5件おきに罫線を変えて描くにはどうしたらいいの。【ruled line】

Excel。手早く5件おきに罫線を変えて描くにはどうしたらいいの。

<条件付き書式+MOD+ROW関数>

表を見やすくしたいので、5件おきに、セルの下罫線を変えたい場合、どのようにしたら、手早く設定することができるのでしょうか。

5件おきに罫線

Excel VBAでプログラムをつくってもいいかもしれませんが、条件付き書式で設定する方法をご紹介します。


見出し行を除いたデータのA2:B13を範囲選択します。


ホームタブの条件付き書式にある、「新しいルール」をクリックします。


新しい書式ルールダイアログボックスが表示されます。


ルールの種類を「数式を使用して、書式設定するセルを決定」を選択します。


条件式のボックスに、

=mod(row(),5)=1

と設定します。


あとは罫線の書式を設定しますので、書式ボタンをクリックします。


わかりやすいように、赤色にしてみましたが、用途に合わせて線種や色を設定します。

下線に描きたいので、下線のボタンをクリックして、OKボタンをクリックします。


元のダイアログボックスが表示されますので、改めてOKボタンをクリックして完成です。


条件式を説明します。

=mod(row(),5)=1


MOD関数は、除算した余りを算出する関数です。


最初の引数にはROW関数をつかって、行番号を抽出します。


2番目の引数は、除数です。

「5件おき」なので、5で除算します。


除算した余りが、1の時が、5件おきなので、「=1」を追加します。


なお、ここの条件をアレンジすることで、様々なケースに対応することができます。


ただ、線種が少ないので、もっと色々対応した場合には、Excel VBAでプログラムをつくってみるのもいいかもしれませんね。

10/16/2023

Excelのショートカットキー。Ctrl+Shiftキーと数値。Ctrl+Shift+6でセルに外枠罫線など【shortcut】

Excelのショートカットキー。Ctrl+Shiftキーと数値。Ctrl+Shift+6でセルに外枠罫線など

<Ctrl+Shiftキー+数値>

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

Excelのショートカットキー

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


Ctrl+Shift+1

マイナスの数値を赤色にしない表示形式にする



Ctrl+Shift+2

アクティブなセルの 1 つ上のセルの値をコピーします。



Ctrl+Shift+3

日付形式を設定する



Ctrl+Shift+4

通貨スタイル (¥)を設定する



Ctrl+Shift+5

セルの値を % 表示にする



Ctrl+Shift+6

セルに外枠罫線を設定



Ctrl+Shift+7

1つ上のセルの数式をコピーする。数式の参照先は変更しない。



Ctrl+Shift+9

行選択した範囲内にある非表示の行を再表示する

10/15/2023

Excel。2023/7/23-7/29にBINOM.DIST関数など紹介したFacebookページのコメントです。【Trivia】

Excel。2023/7/23-7/29にBINOM.DIST関数など紹介したFacebookページのコメントです。

<Facebookページ>

Facebookページに書いた、Excelの豆知識(Trivia)です。

Facebookページ

7月23日

Excel。

BINOM.DIST関数

読み方: バイノム・ディスト  

読み方: バイノミアル・ディストリビューション

BINOM.DIST(成功数,試行回数,成功率,関数形式)

二項分布の確率を算出する 



7月24日

Excel。

BINOM.DIST.RANGE関数

読み方: バイノム・ディスト・レンジ  

読み方: バイノミアル・ディストリビューション・レンジ

BINOM.DIST.RANGE(試行回数,成功率,成功数,[成功数2])

二項分布を使用した試行結果の確率を算出する 



7月25日

Excel。

BINOM.INV関数

読み方: バイノム・インバース  

読み方: バイノミアル・インバース

BINOM.INV(試行回数,成功率,α)

累計二項分布が基準値以上になる最小値を算出します 



7月26日

Excel。

BITAND関数

読み方: ビットアンド  

BITAND(数値1,数値2)

論理積を算出する 



7月27日

Excel。

BITLSHIFT関数

読み方: ビットレフトシフト  

BITLSHIFT(数値,移動数)

ビットを左シフトする 



7月28日

Excel。

BITOR関数

読み方: ビットオア  

BITOR(数値1,数値2)

論理和を算出する 



7月29日

Excel。

BITRSHIFT関数

読み方: ビットライトシフト  

BITRSHIFT(数値,移動数)

ビットを右シフトする 

10/14/2023

Access。クエリ。絶対値:平均値からどのぐらい離れているかを知りたい

Access。クエリ。絶対値:平均値からどのぐらい離れているかを知りたい

<Access:Abs関数>

演算フィールドをつかって、平均値から、どのぐらい乖離しているのかを知りたい場合、絶対値をつかいます。

Access

Excelには、ABS関数という絶対値を算出する関数があります。


そして、Accessにも、Abs関数という絶対値を算出する関数がありますので、クエリで絶対値を算出していきます。


つかうテーブルです。


数値フィールドの平均値を算出して、その平均値との差を絶対値として算出します。


クエリで演算フィールドをつくりますので、作成タブのクエリデザインをクリックします。

必要なフィールドを設定したら、絶対値の演算フィールドをつくります。


設定した演算フィールドは、

絶対値: Abs([数値]-DAvg("[数値]","T数値"))

と設定します。


平均値は、DAvg関数を使って算出します。


「DAvg("[数値]","T数値"))」で平均値を算出したら、数値フィールドの値から減算した値をAbs関数で絶対値にします。



絶対値をきちんと算出しているのかの確認で、平均値差というフィールドもつくってみました。

10/13/2023

Excel。F分布の上側確率から確率変数を算出できるのが、F.INV.RT関数です。【F.INV.RT】

Excel。F分布の上側確率から確率変数を算出できるのが、F.INV.RT関数です。

<関数辞典:F.INV.RT関数>

F.INV.RT関数

読み方: エフ・インバース・ライトテール  

分類: 統計 

F.INV.RT関数

F.INV.RT(確率,自由度1,自由度2)

F分布の上側確率から確率変数を算出する 

10/12/2023

Excel。アルファベットや丸数字はオートフィルの連続コピーができないので、どうするの【alphabet】

Excel。アルファベットや丸数字はオートフィルの連続コピーができないので、どうするの

<CHAR+CODE+SEQUENCE関数>

アルファベットや丸数字は、オートフィルで連続コピーをすることができません。

なぜかというと、「文字列」扱いだからですね。

ユーザー設定リストに登録してもいいのですが、面倒です。

連続コピー

 

そこで、関数をつかうことで、手早くアルファベットや丸数字を連続コピーすることができます。

C2に設定した数式は、

=CHAR(CODE("①")+SEQUENCE(5,,0))


SEQUENCE関数によるスピル機能によって、オートフィルをつかわないで、指示した件数の連続データをつくってくれます。


今回のポイントは、文字列には「+1」することはできませんが、文字コードならば「+1」することで、次の文字コードの文字を表示することが可能です。


そこで、一度、文字から文字コードを抽出するために、CODE関数で文字コードを算出します。

それが、CODE("①")

これで、「①」の文字コードを算出することができます。


その値に、以前はROW関数で行番号を和算させる数式をつくってオートフィルしていました。


今は、SEQUENCE関数があるので、事前に作成するデータ数がわかっているようならば、SEQUENCE関数をつかうことで、手早く連続データをつくることができます。


SEQUENCE(5,,0)を確認しておきましょう。


最初の引数は、「行」。

今回は「⑤」まで表示したいので、「5」とします。


2つ目の引数の「列」は不要なので、省略。


3つ目の引数は、「開始」文字コードに「+1」したいだけなので、省略してしまうと、1件目が「+1」されてしまうので、「0」にします。


これで、1~5の数値をつくることができます。


この数値を文字コードに和算します。


このままだと文字コードのままなので、CHAR関数をつかって、文字コードに基づく文字を表示してくれるという仕組みです。


このような方法を使うことで、アルファベットや丸数字を連続データをつくることができます。

10/11/2023

Excel。最新関数で、手早く重複なく整数をランダムで表示したい。【integer】

Excel。最新関数で、手早く重複なく整数をランダムで表示したい。

<SORTBY+SEQUENCE+RANDARRAY関数>

整数の数値をランダムで表示したい。


しかも、重複しないようにしたい場合、Microsoft365やExcel2021で登場した3つの関数を使うことで、手早く算出することができます。

重複なく1~10までの数値をランダムで表示

今回は、1~10までの整数とします。


A1に次の数式を設定します。

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


これで、重複しないで1~10の数値をランダムで表示することができます。

今までは、RAND関数で一度、ランダムの数値を算出して、その数値の順位を算出する。

その後、RANK.EQ関数をつかって、重複しないランダムの数値をつくっていました。


手間が結構かかったわけですね。

ところが、一つの数式で、算出できるようになったというわけです。


SORTBY関数とSEQUENCE関数とRANDARRAY関数で、算出することができるようになりました。


では、

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

の仕組みを確認しておきましょう。


SORTBY関数は、範囲内にある値を並べ替えする関数です。

最初の引数は、「配列」です。SEQUENCE関数をつかって、1~10の値をつくります。


SEQUENCE(10)とすることで、行ごとに1から10の数値を算出してくれます。

これで、1~10の範囲を得ることができます。


2つ目の引数は、「基準配列1」です。並べ替えを行うための基準です。

ここに、RANDARRAY関数をつかって、ランダムの数値をつくり、基準とします。


SORTBY関数とSEQUENCE関数とRANDARRAY関数は、スピル機能に対応した関数なので、オートフィルで数式をコピーする必要はありません。

そのため、A1に数式を設定するだけで済みます。


今回紹介した、SORTBY関数とSEQUENCE関数とRANDARRAY関数をはじめとして、新しい関数が色々追加されています。


確認してみると、可読性の高い数式に修正することができるかもしれませんね。

10/10/2023

Excelの様々な関数の読み方や引数などを紹介。今回は、UNICHAR関数~UPPER関数です。【dictionary】

Excelの様々な関数の読み方や引数などを紹介。今回は、UNICHAR関数~UPPER関数です。

<Excel関数辞典:VOL.86>

今回は、UNICHAR関数~UPPER関数までをご紹介しております。

Excel関数辞典

UNICHAR関数

読み方: ユニコードキャラクター  

UNICHAR(数値)

数値で指定したUnicode番号の文字に変換します 



UNICODE関数

読み方: ユニコード  

UNICODE(文字列)

文字列の最初の文字のUnicode番号を返す 



UNIQUE関数

読み方: ユニーク 

UNIQUE(配列,[列の比較],[回数指定])

範囲または配列から一意の値を返す 



UPPER関数

読み方: アッパー  

UPPER(文字列)

英字を大文字に変換する 

10/09/2023

Excel。F.INV関数で、F分布の下側確率から確率変数を算出できます。【F.INV】

Excel。F.INV関数で、F分布の下側確率から確率変数を算出できます。

<関数辞典:F.INV関数>

F.INV関数

読み方: エフ・インバース  

分類: 統計 

F.INV関数

F.INV(確率,自由度1,自由度2)

F分布の下側確率から確率変数を算出する

10/08/2023

Excel。VBA。日付が8桁の数値だったので、年月日の日付にするにはどうするの?【date is numeric】

Excel。VBA。日付が8桁の数値だったので、年月日の日付にするにはどうするの?

<Excel VBA>

インポートしたら、日付が8桁の数値になっていました。


これでは、日付としてつかえないので、「/(スラッシュ)」や年月日の日付にするには、どうしたらいいのでしょうか。


まして、大量のデータ。

日付が8桁の数値

 

そこで、Excel VBAでプログラムを作って対応することにしました。


Sub 数値を日付()

    Dim i As Integer

    Dim row_count As Integer

    Dim nen As String

    Dim tuki As String

    Dim niti As String

   

    row_count = Range("A1").End(xlDown).Row


    For i = 2 To row_count

        nen = Mid(Cells(i, "a"), 1, 4)

        tuki = Mid(Cells(i, "a"), 5, 2)

        niti = Mid(Cells(i, "a"), 7, 2)

           

        Cells(i, "b") = nen & "/" & tuki & "/" & niti

        Cells(i, "c") = nen & "/" & tuki & "/" & niti

        Cells(i, "c").NumberFormatLocal = "yyyy年m月d日"

    Next

End Sub


A列の8桁の数値が、B列は「/(スラッシュ)」でC列は「年月日」の日付にすることができました。


それでは、プログラム文を確認します。


変数の宣言ですね。

Dim nen As String

Dim tuki As String

Dim niti As String


これは、年・月・日を格納するための変数です。


row_count = Range("A1").End(xlDown).Row

For to Next文で繰り返し処理をしますので、その回数を得るためのrow_countという変数を用意しました。


nen = Mid(Cells(i, "a"), 1, 4)

tuki = Mid(Cells(i, "a"), 5, 2)

niti = Mid(Cells(i, "a"), 7, 2)

ここでは、Mid関数をつかって、A列のデータを抽出しています。


例えば、「nen = Mid(Cells(i, "a"), 1, 4)」だと、nenという変数に年を格納しますが、文字列の1文字目から4文字を抽出するという意味です。


同じように、月と日も抽出し格納します。


Cells(i, "b") = nen & "/" & tuki & "/" & niti

変数と「/(スラッシュ)」を「&(アンパサンド)」で結合することで、日付にすることができます。


これで、「/(スラッシュ)」の日付にすることができました。


では、年月日はというと、一発でできないので、最初「/(スラッシュ)」の日付を作ります。


Cells(i, "c") = nen & "/" & tuki & "/" & niti


そのあと、表示形式の「NumberFormatLocal」プロパティをつかって、年月日に表示形式を変更します。


Cells(i, "c").NumberFormatLocal = "yyyy年m月d日"


このようにすれば、手早く、8桁の数値を日付にすることができます。

10/07/2023

Excel。2023/7/16-7/22にBETA.DIST関数など紹介したFacebookページのコメントです。【Trivia】

Excel。2023/7/16-7/22にBETA.DIST関数など紹介したFacebookページのコメントです。

<Facebookページ>

Facebookページに書いた、Excelの豆知識(Trivia)です。

Facebookページ

7月16日

Excel。

BETA.DIST関数

読み方: ベータ・ディスト  

読み方: ベータ・ディストリビューション

BETA.DIST(x,α,β,関数形式,[A],[B])

ベータ分布の累積確率を算出します 



7月17日

Excel。

BETAINV関数

読み方: ベータインバース  

BETAINV(確率,α,β,[A],[B])

累積確率からベータ分布の値を逆算する 



7月18日

Excel。

BETA.INV関数

読み方: ベータ・インバース  

BETA.INV(確率,α,β,[A],[B])

累積確率からベータ分布の値を逆算する 



7月19日

Excel。

BIN2DEC関数

読み方: ビントゥデック  

読み方: バイナリ・トゥ・デジマル

BIN2DEC(数値)

2進数を10進数に変換する 



7月20日

Excel。

BIN2HEX関数

読み方: ビントゥヘックス  

読み方: バイナリ・トゥ・ヘキサデジマル

BIN2HEX(数値,[桁数])

2進数を16進数に変換する 



7月21日

Excel。

BIN2OCT関数

読み方: ビントゥオクト  

読み方: バイナリ・トゥ・オクタル

BIN2OCT(数値,[桁数])

2進数を8進数に変換する 



7月22日

Excel。

BINOMDIST関数

読み方: バイノムディスト  

読み方: バイノミアルディストリビューション

BINOMDIST(成功数,試行回数,成功率,関数形式)

二項分布の確率を算出する

10/06/2023

Excel。FLOOR.MATH関数は負数の切り捨て方がモードで変わります【FLOOR.MATH】

Excel。FLOOR.MATH関数は負数の切り捨て方がモードで変わります

<FLOOR.MATH関数>

予算などで、1000円単位で、切り捨てた数値を算出したい時に使用する関数に「FLOOR.MATH関数」があります。


このFLOOR.MATH関数は負数の時にモードを使い分けることで、算出する数値が異なってきます。

FLOOR.MATH関数

FLOOR.MATH関数は、2つ目の引数である、「基準値」の倍数に切り捨てる関数です。


B2に設定した数式は、

=FLOOR.MATH(A2,100,0)


オートフィルで数式をコピーしています。


B6のみ、

=FLOOR.MATH(A6,100,1)

という数式にしています。


A2の120は、基準値を100としているので、101~199までは100へと切り捨てられます。


A3の190のように、200に近くても関係ありません。


A4の210ならば、200と算出されるといのが、FLOOR.MATH関数です。


ところが、負数では、変わってきます。


B5の数式は、

=FLOOR.MATH(A5,100,0)

としています。


3つ目の引数がモードなのですが、「0」とすると、数値の小さい側に切り捨てられます。


「1」とすると、「絶対値」の小さい側に切り捨てられるようになっています。

つまり、「0(ゼロ)」に近いように切り捨てられるというわけです。

10/05/2023

Excel。表の行列が交わるデータを手早く抽出するならXLOOKUP関数がオススメ【cross table】

Excel。表の行列が交わるデータを手早く抽出するならXLOOKUP関数がオススメ

<XLOOKUP関数>

今までは、INDEX関数とMATCH関数を組み合わせないと、算出することが難しかったことが、XLOOKUP+XLOOKUP関数というXLOOKUP関数のネストで、算出することができますので、その方法をご紹介します。


次の表を用意しました。

XLOOKUP関数

A1:G4には、運送料の表があります。


重さと地域が交わるところが、その運送料なわけです。


これを算出するのに、以前は、INDEX関数とMATCH関数をつかうことで、算出していましたが、少々わかりにくいところがありました。


ちなみに、B9の送料をINDEX関数とMATCH関数で数式を設定すると、

=INDEX(B2:G4,MATCH(B7,A2:A4,1),MATCH(B8,B1:G1,0))


行と列の座標をMATCH関数で算出させるわけですね。


これと同じように、XLOOKUP関数で、算出することができます。


B9にXLOOKUP関数をつかった数式を設定してみます。

=XLOOKUP(B8,B1:G1,XLOOKUP(B7,A2:A4,B2:G4,,-1,1))


これで、先程の、INDEX関数とMATCH関数と同じように算出することができます。


このXLOOKUP関数の数式のポイントは、

最初のXLOOKUP関数で、地域の「列」の座標軸になっています。


引数内の2つ目のXLOOKUP関数が、重さである、「行」の座標軸で使用しています。


XLOOKUP(B7,A2:A4,B2:G4,,-1,1)

重さが完全一致だけとは限りません。

そこで、一致モードを「-1」に設定することで、近似値で算出できます。


XLOOKUP関数は、アイディアによって、色々使える可能性がありますね。

10/04/2023

Excel。FIXED関数をつかえば、四捨五入とカンマ区切りが同時にできます。【FIXED】

Excel。FIXED関数をつかえば、四捨五入とカンマ区切りが同時にできます。

<FIXED関数>

小数点第一位を表示する四捨五入。

そして、「,(カンマ)」をつかった三桁区切りを設定したい場合、ROUND関数をつかって、四捨五入をして、表示形式の三桁区切りのボタンをクリックすると、小数点が消えてしまいます。


これは、三桁区切りのカンマが、通貨スタイルによる原因です。


となると、ROUND関数をつかったあとに、表示形式を再度設定するかTEXT関数で表示形式を設定する必要があります。


そのため、単純な作業であっても、面倒な処理になってしまいます。


そこで、「FIXED関数」をつかってみると、四捨五入と三桁区切りを同時に設定することができます。

FIXED関数

B1に「1234.56」という数値を入力しました。


この数値を、小数第二位を四捨五入して、小数点第一位を表示する。

そして、三桁区切りのカンマを整数に設定する。


この処理をしたいので、B3にFIXED関数をつかった数式を設定します。

=FIXED(B1,1,FALSE)


これで、完成しました。


それでは、FIXED関数の引数を確認します。

最初の引数は「数値」。

B1を設定します。


2つ目の引数は、「桁数」。

四捨五入後、何桁目までを表示するのかを指定します。

これは、ROUND関数と同じです。


今回は、小数第二位を四捨五入して、小数点第一位を表示するので、「1」としました。

小数点をカットするならば「0(ゼロ)」ですね。


最後の引数は、「桁区切り」です。

TRUEならば、三桁区切りのカンマは設定しない。

FALSEならば、三桁区切りのカンマを設定することができます。


なかなか、使えそうなFIXED関数ですが、数字文字列になってしまうので、左揃えになってしまいます。


なお、FIXED関数は、「フィックスト」と読みます。

10/03/2023

Excel。F分布の右側(上側)確率を算出することができるF.DIST.RT関数【F.DIST.RT】

Excel。F分布の右側(上側)確率を算出することができるF.DIST.RT関数

<関数辞典:F.DIST.RT関数>

F.DIST.RT関数

読み方: エフ・ディスト・ライトテール

読み方: エフ・ディストリビューション・ライトテール

分類: 統計 

F.DIST.RT関数

F.DIST.RT(x,自由度1,自由度2)

F分布の右側(上側)確率を算出する

10/02/2023

Excel。正数・ゼロ・負数で文字の色を手早く変更するには、表示形式をつかいます。【Plus or minus】

Excel。正数・ゼロ・負数で文字の色を手早く変更するには、表示形式をつかいます。

<表示形式>

条件によって、文字の色を変えるならば、条件付き書式をつかいます。


ただ、条件付き書式は、設定する条件数が増えれば増えるほど、面倒になってきます。


例えば、正数なら文字の色を青。

ゼロなら、文字の色を黒。

負数なら文字の色は赤。

というようにしたいなら、条件付き書式をつかうならば、3種類設定しなければなりません。


つまり、3回同じようなことをしないといけないというわけです。

ちょっと面倒ですね。

また、Excel VBAでプログラム文をつくるというほどのことでもない。


そこで、表示形式のユーザー定義をつかうことでも、文字の色を条件によって変更することも可能です。


今回は、誤差の値が、正数なら文字の色を「青」。ゼロならば、そのまま「黒」で、負数ならば、文字の色を「赤」にしたいわけです。


設定方法を確認していきます。

D2:D6を範囲選択します。


セルの書式設定ダイアログボックスを表示します。


表示形式の分類にある「ユーザー定義」をクリックします。

表示形式

種類に、

[赤][<0]-#,##0;[=0]0;[青]#,##0

と設定します。


これで、正数なら文字の色を「青」。

ゼロならば、そのまま「黒」で、負数ならば、文字の色を「赤」にすることができます。


設定した「[赤][<0]-#,##0;[=0]0;[青]#,##0」を確認しておきましょう。


[赤]や[青]ですが、これで文字の色を設定することができます。


あと、[<0]や[=0]とすると、[<0]はゼロより小さい場合、[=0]でゼロの場合の条件を設定することができます。


なので、[赤][<0]とすることで、「ゼロより小さい場合は文字の色を赤色」という条件をつくることができるというわけです。

10/01/2023

Excelのショートカットキー。Ctrl+ShiftキーとO~V。メモがあるセルを選択できるCtrl+Shift+O【shortcut】

Excelのショートカットキー。Ctrl+ShiftキーとO~V。メモがあるセルを選択できるCtrl+Shift+O

<Ctrl+Shiftキー+O~V>

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

Excelのショートカットキー

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


Ctrl+Shift+O

メモが挿入されたすべてのセルを選択する



Ctrl+Shift+P

セルのフォント設定ダイアログ ボックスを開く



Ctrl+Shift+U

数式バーを展開する、または折りたたむ。



Ctrl+Shift+V

図形などオブジェクトの書式を貼り付ける