目次
ACCESSで文字列を抽出
こんにちは。伊川(@naonaoke)です。
前回は、Excelで、FIND関数をメインに使って、数字のみを抽出しました。
では、ACCESSでも、同等のことができるのでしょうか?
問題提起
(株)IKAWAの阿久 世子男(アク セスオ)は、上司から下記の依頼を受けました。
当社のサイトから、ダウンロードされているサンプルファイルの合計をデータベースにしてほしい。
さて、どのように作成ればいいだろうか?
解決策
回答
・Val関数、MID関数、InStr関数を利用してクエリを作成する。
利用する関数
利用する関数
Val関数は、文字列を必ず数値型に変換して返します。
MID関数は、文字列の途中から抽出する関数です。
InStr関数は、文字列を検索し見つかった最初の位置を返します。
特定の文字列抽出 作成手順その1 データベース確認
159を抽出したいとします。
Excelでは、FIND関数がありましたが、ACCESSには、FIND関数がありません。
したがって、別の関数を利用しなければなりません。
しかし、考え方は同じですので、ACCESSでも自由自在い文字が抽出できるようにしましょう。
特定の文字列抽出 作成手順その2 目印(メルクマール)を探す
クエリは、動画でも行ってきましたが、変幻自在に操作できます。
それは、ACCESSには、SQL文という技があるからです。
つまり、SQL文を記載する人間のスキルが大きく左右します。
今回は、どのようなSQL文を記載するのでしょうか?
特定の文字列抽出 作成手順その3 SQL文を組む
思考過程その1
思考過程その2
.
思考過程その3
思考過程その4
完成
ここがポイント
ここがポイント
今回のポイントは、InStr関数にあります。読み方は、インストリング関数といいます。
InStr関数は、とても便利な関数です。ただし、単独で使うことはほとんどありま線。上記サンプルのように、ただ文字の位置を調べて終わるという作業は、実務ではほとんどありません。文字の位置を調べて、それを元に次の処理を行うのが一般的です。また、InStr関数はVBAでも利用でますでの、ぜひ、みなさんのスキルにしてください。
まとめ
今回のまとめ
今回で、クエリの使い方も少しずつ理解してきた、阿久 世子男(アク セスオ)なのでした。
今回のサンプルファイルは、No85です。
毎日の業務が、3時間短縮できます
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。