お疲れ様です。Nasです。
だんだんと秋めいてきましたね🍁あれだけ暑かったのに、いつの間にか季節は巡るものですね~。
運動の秋?芸術の秋?いやいや、食欲の秋?
さて今日は、文字の全角・半角をQlik内で一括変換する方法を取り上げますよ。
Qlikの中では、変換できませんよね😢
元のデータはそのままに、Qlikでデータを読み込む時に変換を行う方法なので、覚えておくと超便利です!
今回は全角カタカナを半角カタカナへと変換してみます。
では、早速やってみましょう😊
ちょっとだけ準備
今回はロードスクリプト内での作業になります。
大きな流れとしては、こんな感じです。
- 基準となるデータを読み込む
- 変換したいデータを読み込む
そこで今回はこちらの基準となるデータ(Excel)を使用します。
全角カタカナ➡半角カタカナ に変換するための基準データです。
これ以外にご自分で用意されたものでも、作業できます。
中身はこのようになっています↓
最後の文字「ン」まで入っています。

MapSubString
さて、データをダウンロード後はアプリ内のデータロードエディタを開きましょう。
セクションに「mapping」を追加して、先ほどの「zenkaku_hankaku」Excelファイルをアプリ内に読み込みます。
LOAD
全角,
半角
FROM [lib://●●●●●/zenkaku_hankaku.xlsx]
(ooxml, embedded labels, table is Sheet1);そして上に2行追加して、変換用のMappingテーブルを作成します。
Map_character: →これがMappingテーブル名になります
Mapping… MappingテーブルとしてLOADさせる
Map_character:
Mapping
LOAD
全角,
半角
FROM [lib://●●●●●/zenkaku_hankaku.xlsx]
(ooxml, embedded labels, table is Sheet1);
次に変換したいデータを読み込みます。
今回は「商品カテゴリ」というExcelファイルです。
中身はこんな感じです。「カテゴリ名」のカタカナ部分を半角にしてみます。

商品カテゴリのデータをLoadする際に、MapSubstring関数を用いて、変換を行います。
MapSubstringはApplyMapと異なり、項目の値の一部の文字列を変更できますので、Map_charactorで列記された部分的な文字列を変換してくれます。
LOAD
カテゴリID,
MapSubString('Map_character',カテゴリ名) as カテゴリ名
FROM [lib://●●●●●/商品カテゴリ.xlsx]
(ooxml, embedded labels, header is 1 lines, table is categories);MapSubString(‘Mappingテーブル名’,変換前の項目) as 変換後の項目名
ここまで来たら、あとはアプリにリロードをかけるだけです😉
変換後は...
もともと「商品カテゴリ」というファイルの中身はこのようでした。

今回の作業で、カタカナの部分はきちんと半角になりましたね!

留意点として、Mapping LoadしたMappingテーブルを元にMapSubstringで変換する場合、Mappingテーブルで読み込んだ順番に変換が行われるため、Mappingテーブルで読み込むデータを作成する際に考慮しておく必要があります。
ャュョやガギグゲオを上に持ってきているのはそのためです。
まとめ
いかがでしたか?
基準となるデータの左列(A)がBeforeで、右列(B)がAfterとなります。

逆パターンは、Load 半角, 全角…と指定すればOKです!
サクっと変換して、スマートにQlikを使っていきましょう😎
では、また次回もこちらでお会いしましょう


