Expression
ここで設定する内容は、数式の文法や挙動に直接影響する、ローカライズの中枢と言えるものです。ここでの設定は、極力、Excelとの互換性を重視して行われることになります。しかし、残念ながら、このリソースファイルによる手法ではローカライズできない機能も存在します。実装が必要な機能も存在するためです。
注意
Kawasemiに初めから組み込まれている「日本語」には、これらの実装が含まれています。そのため、リソースファイルによるローカライズでは対応できない機能も、この「日本語」であればExcelと同様に動作します。
「Expression」タブを開くと、更にその中に8つのタブが存在します。以下では、これらが一体どの様な機能の変更をもたらすのかについて説明します。
Imaginary Units
「Imaginary Units」タブでは虚数単位として使用する文字を変更します。ただし、通常、これを変更する必要は無いため、この部分は未設定で構いません。未設定の場合は初期値が使用されます。
虚数単位の初期値は小文字の「i」と「j」ですが、万が一、これを変更する必要がある場合は、以下の手順で文字を入力します。
-
「+」ボタンをクリックしてテキストボックスを表示します。
- テキストボックスに虚数単位として使用する文字を入力し、Enterキーを押下します。
-
入力した文字を削除する場合は、その文字を選択して「-」ボタンをクリックします。
Functions
「Functions」タブでは関数名を変更します。関数名は言語によって異なる場合があるため、ここでこれを変更します。その言語での関数名を入力欄に入力してください。
関数は400以上も存在するため、11個の分類に分けられています。この中で注意を要するのは、「Text」に分類されている「DOLLAR」と「USDOLLAR」です。DOLLAR関数は分かりますが、USDOLLAR関数は見慣れない関数です。これは何でしょう。ExcelでもKawasemiでも、シートを.xlsxファイルに保存すると、数式内で使用されたDOLLAR関数は「USDOLLAR」として保存されます。つまり、DOLLAR関数の実体はUSDOLLAR関数なのです。それでは、本来のDOLLAR関数はどうなっているのでしょうか。実は、米国英語環境ではこの関数は使用されていません。そして他の言語環境では、それぞれの言語にローカライズされて使用されます。例えば日本語環境ではYEN関数として使用されます。そのため、日本語にローカライズするのであれば、「DOLLAR」の欄に「YEN」と入力することになります。
そして、USDOLLAR関数をDOLLAR関数として使用しなければならないため、「USDOLLAR」の欄には「DOLLAR」と入力します。
Symbols
「Symbols」タブでは数式内で使用する記号を変更します。言語によって使用する記号が異なる場合があります。例えば、「IF(A1,0,1)」のように、関数の引数を区切る記号は、米国英語環境ではカンマ「,」ですが、スペイン語環境ではセミコロン「;」が使用されます。
「Symbols」の入力画面には入力欄が2列存在します。「Local symbol」と「Regular expression」です。
「Local symbol」には数式が表示される際に使用される記号を入力します。上のスペイン語の例であれば、「Parameter separator(,)」の「Local symbol」にセミコロン「;」を入力します。「Local symbol」に入力された記号は、あくまで表示用に過ぎません。問題はその右隣にある「Regular expression」です。ここには、Kawasemiで入力された数式文字列を解析する際、記述された記号を抜き出すために使用される正規表現を入力します。多くの場合、この入力欄は空欄のままで構いません。この欄が空欄の場合、「Local symbol」に記入された記号が正規表現として使用されます。それなのにわざわざ正規表現を入力させるのは、東アジアの言語では全角文字も記号として使用することができてしまうためです。カンマの場合であれば、半角のカンマも全角のカンマも、同じカンマとして認識できなければならないため、「Regular expression」の入力欄には「[,,]」といった正規表現を入力しなければなりません。もっとも、数式内で使用する記号に全角文字などを許容しないのであれば、面倒な正規表現を入力する必要はありません。
Number Parts
「Number Parts」タブでは、数式内に記述された数値を抜き出すために使用される正規表現を入力します。
数値の構成要素は言語環境によって異なります。例えば米国英語環境では、小数点は「.」、桁区切りは「,」ですが、ヨーロッパの言語では逆で、小数点が「,」、桁区切りが「.」です。しかし、この入力画面でこれらを明示的に設定する必要はありません。冒頭で設定した「Language tag」を基に、Kawasemiは数値の構成要素を自動的に取得します。この画面で正規表現の入力が必要になるのは、「Symbols」と同様、全角文字で記述された数値を許容する場合だけです。そうでない場合、この画面の入力欄は全て空欄のままにします。
例えば、半角文字「0」と全角文字「0」を共に数字の0として認識しなければならない場合は、「Zero」の入力欄に「[00]」と入力します。
Errors
「Errors」タブではエラー値の文字列を変更します。エラー値は言語によって異なる場合があります。例えば、米国英語環境の「#NAME?」は、スペイン語環境では「#¿NOMBRE?」と表記されます。
「Symbols」と同様に、この画面にも入力欄が2列存在します。
「Local error」には言語固有のエラー値を入力します。上のスペイン語の例であれば、「#NAME?」の入力欄に「#¿NOMBRE?」と入力します。「Local error」が空欄の場合は、エラー値として米国英語環境と同じ文字列が使用されるものとみなされます。「Regular expression」には、数式内に記述されたエラー値を抜き出すために使用される正規表現を入力します。「Symbols」と同様、全角文字で記述されたエラー値を許容する場合は、この欄に正規表現を入力してください。そうでない場合、この入力欄は空欄のままで構いません。
例えば、半角文字と全角文字、大文字と小文字が混在した文字列でもエラー値として認識する必要がある場合、「[##][nNnN][aAaA][mMmM][eEeE][??]」のような少々長い正規表現を「Regular expression」の入力欄に入力します。
Condition
「Condition」タブでは、条件文の中に記述された等号や不等号を抜き出すために使用される正規表現を入力します。この条件文は、データベース関数やSUMIF関数などで引数として指定される文字列です。
多くの場合、この入力画面は空欄のままで構いません。もし、使用できる記号を変更する場合や、全角文字の記号を許容しなければならない場合は、この入力欄に正規表現を入力してください。
例えば、全角文字で記述された等号否定を許容しなければならないのであれば、「Not equal to (<>)」の入力欄に「[<<][>>]」と入力することになります。
ASCII
「ASCII」タブは、全角文字を使用する東アジアの言語のための入力画面です。それ以外の言語では、恐らく入力の必要はありません。
ここでの設定はASC関数の挙動に直結します。ASC関数は、「Full width character」の列に入力された文字を、「Half width character」の列に入力された文字に変換します。例えば、「Full width character」の列に「/」、「Half width character」の列に「/」と入力した場合、「ASC("///")」という数式は文字列「///」を返します。
この入力画面では以下の手順で入力を行います。
-
「+」ボタンをクリックしてテキストボックスを表示します。
-
テキストボックスに全角文字を入力し、Enterキーを押下します。
-
「Half width character」の入力欄に半角文字を入力し、Enterキーを押下します。
-
入力した文字を削除する場合は、その文字を選択して「-」ボタンをクリックします。
入力する文字の数が多い場合、この方法で入力するのは骨が折れます。そのため、クリップボードに格納されたTSV(Tab Separated Values)データを貼り付ける機能が用意されています。以下の手順で貼り付けてください。
- Excelなどのソフトで、クリップボードにデータをコピーします。これらのソフトでコピーされたデータは、通常、TSVとして取り出すことができます。
-
「↓」ボタンをクリックしてクリップボードに収められたTSVデータを貼り付けます。
DBCS
「DBCS」タブも「ASCII」と同様、全角文字を使用する東アジアの言語のための入力画面です。それ以外の言語では、恐らく入力の必要はありません。
ここでの設定はDBCS関数の挙動に直結します。DBCS関数は、「Half width character」の列に入力された文字を、「Full width character」の列に入力された文字に変換します。
この入力画面では以下の手順で入力を行います。
-
「+」ボタンをクリックしてテキストボックスを表示します。
-
テキストボックスに半角文字を入力し、Enterキーを押下します。
-
「Full width character」の入力欄に全角文字を入力し、Enterキーを押下します。
-
入力した文字を削除する場合は、その文字を選択して「-」ボタンをクリックします。
「ASCII」入力画面と同様に、クリップボードに格納されたTSV(Tab Separated Values)データを貼り付ける機能が用意されています。以下の手順で貼り付けてください。
- Excelなどのソフトで、クリップボードにデータをコピーします。これらのソフトでコピーされたデータは、通常、TSVとして取り出すことができます。
-
「↓」ボタンをクリックしてクリップボードに収められたTSVデータを貼り付けます。