Q&A 15

電話番号の市外,市内局番の区切りを変更する方法


電話番号が「0123-34-5678」から「012-345-6789」のように市内局番の先頭 1 桁が市外局番の末尾に移る際に,電話番号項目の値を変更する方法です。

  1. 該当するレコードのみに置換を実行するため選択をしてください。以降の操作はここで選択されたウィンドウを対象とします。全レコードが対象の場合は選択の必要はありません。
  2. [表操作]-[一時項目] で文字列型の一時項目を挿入し下記の式を設定してください。
    [電話番号] は現在電話番号が入っている項目とします。必要に応じて1行目の項目名を変えてください。行番号は見やすくするためにつけてあります。実際の式には入れないでください。
    1.$電話番号:=[電話番号],
    2.$区切り1:=#文字列位置($電話番号,'-',,1),
    3.$区切り2:=#文字列位置($電話番号,'-',,2),
    4.$市外:=#部分文字列($電話番号,1,$区切り1-2),
    5.$市内:=#部分文字列($電話番号,$区切り1-1,$区切り2)-'-',
    6.$番号:=#部分文字列($電話番号,$区切り2+1,),
    7.$市外+'-'+$市内+'-'+$番号
    式の説明
    1行目変数に項目の値を代入します。
    2行目市外局番と市内局番の区切り文字「-」の文字列位置を求めます。
    3行目市内局番と電話番号の区切り文字「-」の文字列位置を求めます。
    4,5,6行目市外局番,市内局番,番号をそれぞれ取り出します。
    7行目市外局番と市内局番と番号を連結します。
  3. 一時項目の実行結果が正しければ置換を実行します。[表操作]-[置換]で「式で指定」ボタンを押し,下記の式を入力してください。
[電話番号]:=[一時項目の名前]