5/02/2026

Access。クエリ。住所から都道府県を抽出するにはどうしたらいい【prefectures】

Access。クエリ。住所から都道府県を抽出するにはどうしたらいい

<Access>

住所フィールドには、都道府県名から建物名まで入力されているデータなので、都道府県をそのデータから抽出したい場合、Accessでは、どのようにしたらいいのでしょうか。


Excelの場合は、IF関数をつかってもいいのですが、次の方法でも、住所から都道府県名を抽出することができます。


C列には住所が入力されています。D列に都道府県を抽出したので、D2に数式を設定します。


=LEFT(C2,(MID(C2,4,1)="県")+3)

数式を設定後、オートフィルで数式をコピーします。


これで、都道府県を抽出することができます。


そもそも、なんでこんな数式をつくらないといけないのかというと、4文字目県問題があるからです。


4文字目県問題とは、神奈川県・和歌山県・鹿児島県のことを指します。


この3件だけ、県が左から4文字目にあります。

ほかの県や北海道・東京都・大阪府・京都府はすべて左から3文字目が区切り位置になっています。


そのため、4文字目が県かどうかの判断が必要だというわけです。


この数式のポイントは、

MID(C2,4,1)="県"

左から4文字目が県だったら、TRUE。


そうでなければ、FALSEを返します。


ExcelではTRUEを1、FALSEを0と定義しています。


4文字目が県ならば1 その値に+3すれば4になります。

そして、LEFT関数をつかうことで、左から4文字目までを抽出するという数式をつくることができます。


これで、都道府県を抽出することができるわけですが、Accessではどのようにしたらいいのでしょうか。


AccessにはIIF関数が用意されていますが、今回紹介したLEFT+MID関数の組み合わせと同じようできるといいのですが。


Accessでの確認をしておきます。


T_都道府県というテーブルの住所フィールドから都道府県を抽出するクエリをつくります。


クエリデザインをつかいます。


Excelと同じ数式を演算フィールドでつくってみました。


都道府県: Left([住所],(Mid([住所],4,1)="県")+3)

実行してみます。


残念ながら、うまく抽出できません。


神奈川県が「神奈」というように、左から4文字目どころか2文字目までで抽出されていることがわかります。


なんでこのようになったのかを確認するために、引数内のMid関数だけの演算フィールドをつくって確認してみます。


Mid関数確認: (Mid([住所],4,1)="県")

実行してみます。

 


AccessではTRUEを「-1」と定義されているので、左から2文字目までしか抽出してくれなかったわけです。


ならば、「+1」となるように演算フィールドを修正すればいいわけです。

都道府県: Left([住所],((Mid([住所],4,1)="県")*-1)+3)

都道府県: Left([住所],((Mid([住所],4,1)="県")*-1)+3)

「-1」を「1」にしたいだけなので「*-1」とマイナス1をかけてあげればいいわけです。


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

これで、住所フィールドから都道府県名を抽出することができました。

5/01/2026

Excel。動画で紹介。都道府県の抽出にIF関数はもういらない。4文字県問題を一瞬で解決【prefectures】

Excel。動画で紹介。都道府県の抽出にIF関数はもういらない。4文字県問題を一瞬で解決

<Youtube>

住所データから「都道府県」だけを抜き出したい時、一番の悩みどころは「神奈川県」「和歌山県」「鹿児島県」の4文字県ですよね。


通常はIF関数を組み合わせて「もし4文字目が『県』なら…」と長い数式を作りますが、実はもっとスマートに、短く書く方法があるんです!


使うのは、エクセルの基本ルール:

「TRUE(正しい)は1」「FALSE(間違い)は0」という性質。


この動画では、IF関数を一切使わずに、LEFT関数とMID関数だけで4文字県問題をクリアする「プロの思考法」をじっくり解説します。

4/30/2026

Excel。減価償却費を定額表で算出するのがSLN関数です。【SLN】

Excel。減価償却費を定額表で算出するのがSLN関数です。

<関数辞典:SLN関数>

SLN関数

読み方: エスエルエヌ

読み方: ストレートライン

分類: 財務 

SLN関数

SLN(取得価額,残存価額,耐用年数)

減価償却費を定額表で算出します

Straight LiNe depreciationの略

4/29/2026

Excel。2項1組横棒グラフをつくるにはどうしたらいい。【one set】

Excel。2項1組横棒グラフをつくるにはどうしたらいい。

<2項1組横棒帯グラフ>

2項1組横棒帯グラフというのは、次のようなグラフです。


2026年と2027年が組になって表示されている横棒グラフです。

今回は、積み上げ横棒グラフをつかっています。


さて、別に問題なくつくれるように思えますが、簡単ではないんですね。

それは、組ごとに空白というか、隙間が空いています。

これが、難しいわけです。


例えば、次の表から、積み上げ横棒グラフを作ってみます。


A1:D7を範囲選択して積み上げ横棒グラフを挿入します。

 


それぞれの積み上げ横棒グラフの隙間は同じ間隔で空いています。これを店舗ごとに寄せたいのですが、それを行うことはできません。

詰めることはできますが、全体一括で動いてしまいます。特定の横棒グラフを選択しても、その棒グラフだけという仕組みになっていません。


そこで、表を次のように編集して、グラフをつくります。


変な表になっていますが、Excelのグラフは表からしかつくれないので、希望するグラフをつくりたい場合には、表をアレンジする必要があります。

2行目や5行目など空白行をいれることで、グラフどうしの隙間を演出しています。


そして、一番のポイントがあります。B13に全角空白を入力しておきます。データが空だと、グラフが綺麗につくれません。


A1:D13を範囲選択して、積み上げ横棒グラフをつくります。


積み上げ横棒グラフが挿入できました。そして、空白行のデータが隙間になっています。


グラフを修正していきましょう。

縦軸が、表と異なっていて、品川が一番上に、新宿が一番下に、そして、年も2027年が上にある状態です。

反転させるので、縦軸をクリックします。

書式タブのグラフ要素が、「縦 (項目) 軸」になっていることを確認して、選択対象の書式設定をクリックします。


画面右側に軸の書式設定作業ウィンドウが表示されます。


軸のオプションの「横軸との交点」を最大項目に、「軸位置」の軸を反転するにチェックをオンにします。

これで、グラフは反転できました。ついでに、棒グラフをクリックします。

作業ウィンドウは、データ系列の書式設定作業ウィンドウに変わりました


系列のオプションの「要素の間隔」を0%にします。これで、棒グラフの太さを調整することができます。用途に合わせて調整します。


あとは、フォントやフォントサイズ、棒グラフの枠線を白色にするなどして見栄えを整えれば完成です。



4/28/2026

Excel。動画で紹介。一次方程式(y=10x)のグラフは散布図をつかって描く【linear equation】

Excel。動画で紹介。一次方程式(y=10x)のグラフは散布図をつかって描く

<Youtube>

Excelで一次方程式などのグラフを描くとき、普通に「折れ線グラフ」を選んで、0から始まらなかったり、目盛りがズレたりして困ったことはありませんか?


実は、X軸もY軸も数値で管理したい場合、折れ線グラフはおすすめできません。


理由は、折れ線グラフだとX軸を「1番目のデータ、2番目…」と「項目」として扱ってしまうからです。


今回は、原点(0,0)から正しく直線を引くための「散布図」の活用法と、方眼紙のように見やすく軸を整えるテクニックを解説します!

4/27/2026

Excel。SKEW.P関数はデータセットの歪度(わいど)を算出します【SKEW.P】

Excel。SKEW.P関数はデータセットの歪度(わいど)を算出します

<関数辞典:SKEW.P関数>

SKEW.P関数

読み方: スキュー・ピー  

分類: 統計 

SKEW.P関数

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

データセットの歪度(わいど)を算出します


4/26/2026

Access。Excelで曜日を表示するにはTEXT関数。Accessではどうするの【Weekday】

Access。Excelで曜日を表示するにはTEXT関数。Accessではどうするの

<Access>

日付から曜日を表示したい場合、Excelだと、TEXT関数を使う方法があります。


次の表で確認してみましょう。


A列に日付が入力してあります。このよう日がB列にあります。


B2には、

=TEXT(A2,"aaaa")

というTEXT関数をつかった数式を設定しております。


TEXT関数は表示形式の関数です。

”aaaa”というのは、日付を”○曜日”と曜日を表示することができます。


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


Accessには、TEXT関数はありません。


テーブルの日付を表示するために、クエリをつくります。


クエリデザインをつかって、クエリをつくります。


演算フィールドをつくります。

曜日: WeekdayName(Weekday([日付]))


実行して確認してみましょう。


曜日を表示することができました。


クエリの演算フィールドを確認します。

曜日: WeekdayName(Weekday([日付]))


WeekdayName関数は、

WeekdayName(曜日番号, モード, 週の開始曜日)

という引数を持っていて、曜日番号に基づいた曜日名を表示します。


曜日番号は、Weekday関数で求めますので、基本的には、WeekdayName関数とWeekday関数はペアで使うことになります。


そのWeekday関数は、

Weekday(日時, 週の開始曜日)

という引数をもっています。


2つ目の引数の「週の開始曜日」を省略すると、日~土で割り振られます。


このような方法をつかうことで、Accessの場合、日付から曜日を表示することができます。