=ASC(文字列)
ASC(エーエスシー)関数は、全角 ASCII 文字とカタカナ文字を半角文字に変換する関数です。
ASC関数の構文
ASC関数の構文は以下のとおりです。
=ASC(文字列)
ASC関数の構文内訳
用語 | 意味 |
---|---|
文字列(文字列) | 半角文字に変換する文字列を指定します。 |
注意!テキストを囲むときは""を付与
直接テキスト(カタカナ)を指定するときは、テキストをダブルクオーテーションで囲みます。
ただし、セルを指定する場合は不要です。
以下にサンプルを記載します。
サンプル式 | 結果 |
---|---|
=asc(アイウエオ) | #NAME? |
=asc("アイウエオ") | アイウエオ |
ダブルクオーテーションで囲まれていないテキストは、エラーが返ってきていることが分かります。
注意2:半角記号の変換はExcelとスプシで異なる
以下のような半角記号についてasc関数で変換すると、
- 「¥」(半角)
- 「()」(半角)
Excelとスプレッドシートで変換結果が異なります。
区分け | 全角記号 | ASC関数式 | 結果 |
---|---|---|---|
Excel | ¥ | =asc("¥") | ¥(半角記号) |
Spreadsheet | ¥ | =asc("¥") | ¥(全角記号) |
以上のように、一部の記号の変換がExcelとスプレッドシートで異なることに注意が必要です。
ASC関数の実行サンプル
以下の表をサンプルに、
文字列(A列) | ASC関数結果(B列) |
---|---|
あいうえお | 空白 |
アイウエオ | 空白 |
SPREADSHEET | 空白 |
B列に、下記のようなASC関数を設定してみました。
=ASC("A2"),=ASC("A3"),=ASC("A4")
結果は以下↓
ASC関数の実行サンプル結果
全角カタカナ(B3セル)のみ半角に置換されていますね。
ASC関数は結果から見ると
- 2バイト文字摂津(DBCS)言語の場合
- 全角文字を半角文字に変更する
といった働きをしてくれることが分かりました。
ASC関数は、PROPER関数と組み合わせるとより効果を発揮してくれます。
参考記事:PROPER関数の使い方(準備中...)
ASC関数 × GASのサンプル
ASC関数をGASで利用する際の、かんたんなサンプルを作成してみました。
実装する表のサンプル。
文字列 | ASC×GAS↓ |
---|---|
あいうえお | |
関数 | |
アイウエオ | |
ABCDEFG |
実装するGAS↓
function asc_func() {
var ss,lastrw,lastrw,val
ss = SpreadsheetApp.getActiveSpreadsheet();
sht = ss.getSheetByName("asc_gas")
lastrw = sht.getLastRow()+1;
val = sht.getRange("A2").getValue();
//ASC関数をセット
for(i=2;i<lastrw;i++){
if(val!=""){
sht.getRange(i,2).setFormula('asc(A'+i+')').setFontSize(12).setBackground("#ffff00");
}
}
}
実行結果↓
文字列 | ASC×GAS↓ |
---|---|
あいうえお | あいうえお |
関数 | 関数 |
アイウエオ | アイウエオ |
ABCDEFG | ABCDEFG |
漢字はや全角ひらがなはそのまま返されます。
ASC関数の使い方 まとめ
ASC関数の使い方でした。
有効に利用するには、
- 全角カタカナを半角にする範囲を決めておく
- 半角にするテキストだけセルに配置しておく
といった感じでしょうか。
漢字・平仮名など半角で利用しないテキストは、半角に変換されないので注意が必要です。
関連記事: AND関数の使い方|すべての条件が満たされているか調べる
関連記事: ADD関数の使い方|2つの数値の合計を返す
関連記事: ADDRESS関数の使い方|行・列番号からセル参照の文字列を取得