入力するとデータ内容が変わる値

2018.01.29基礎・入門文字列操作書式関数その他

Excelにはセルに入力した文字によって数式として認識されたり、入力した内容以外として認識されたりする文字がいくつかあり、入力時に苦労することがあります。
こちらの記事では、「001」と入力しても「1」と表示されてしまうことに対する対処法を解説しました。
今回は、このような文字を入力する時にあらかじめ気を付けられるよう、どんな文字が入力した以外の内容として認識されてしまうのか紹介します。

入力した内容をそのままセルの内容として確定する方法

初めに、入力したものをそのまま表示する方法を紹介します。
このどちらかの方法を使えば以下に紹介する様々な、入力した通りに認識されない内容でも、入力した通りの内容でセルに入力されます。
ただし、この方法で入力したデータは、文字列として認識されます。

セルに入力する文字の先頭に「’」を入力する

セルに入力する文字の先頭に「’」を入力することによって、その入力内容をそのままセルの内容にすることができます。

’の入力

あらかじめ入力する範囲に文字列の表示形式を設定する

文字列の表示形式を設定しているセルに入力した内容は、入力する内容をそのままセルの内容にすることができます。
文字列の表示形式にするには、入力したそのままを表示したいセル範囲を選択し、Ctrl+1のショートカットキーで表示されたセルの書式設定の左の一覧から文字列を選択し、OKをクリックします。

文字列形式

「=」から始める

セルに入力する内容が「=」から始まればそれは数式として認識されます。
「=1」と入力すれば、セルには「1」と表示され、内容も「=1」という数式になります。

=1

 

「=A」と入力すると、[#NAME?]エラーになります。

=A

 

これは、Excelが「A」という名前で定義されているセルを探して、その値を表示しようとしているのですが、「A」という名前でセルをあらかじめ定義していない場合は、名前が見つかりませんので[#NAME?]エラーになります。
もしも、表題「A」を示すために、「=A=」と入力すると、一つ目の「=」で数式として認識します。二つ目の「=」は名前「A」と何かを比較するという[等号]の意味で認識し、今回はその後の比較するものがないために、不完全な数式として認識され、入力すること自体ができません。

=A=

「+」「-」から始める

セルに入力する時に「+」や「-」から始まる数値を入力すると、「+1」は「1」のことですから「1」と表示されます。「-1」はそのまま「-1」の値になります。「+」や「-」から始まる数式を入力すると、「=」で始まる時と同じように、数式として認識されます。
「+1-1」と入力すれば、セルには「0」と表示します。セルに入力されている内容は「=1-1」という数式になります。

+1-1

 

「-1-1」と入力すれば、セルには「-2」と表示します。セルに入力されている内容は「=-1-1」という数式になります。

-1-1

 

「+A」と入力した場合、「=A」と入力した時と同じように、[#NAME?]エラーになります。

 A

 

この場合数式としては、「=A」ではなく「=+A」という数式になります。
「-A」と入力した場合も、「=-A」という数式になります。

-A

もしも、表題「タイトル」を示すために、「-タイトル-」と入力すると、「=タイトル=」と入力した場合と同じように、不完全な数式として認識され、入力すること自体ができません。

=タイトル=

 

「@」から始める

セルに入力する内容が「@」から始まると、関数が入力されるセルと認識されます。
数式ではないので「@1-1」と入力しても「0」とは表示されません。文字列にもならず、入力すること自体ができません。

@1-1

 

Excelではない一部の表計算ソフトの関数の入力方法は関数を「@」で始める数式で入力することになっており、Excelでもその入力ができるようにするために、このような仕様になっています。
単価を100円と表すために「@100」と入力すると、上記の理由で入力できません。

@100

 

この場合は、単価を「@」で表したいセル範囲に、「"@"0」や、桁区切りをする場合は「"@"#,##0」のようなユーザー設定の書式設定を設定してから、数値のみを入力することで対処できます。

@を入力する方法

「*」から始める

「*」から始めた場合は、同じ四則計算に使う記号でも「+」「-」と違って、数式にはならず、文字データとして入力することができます。

*からはじめる

「/」から始める

「/」から始まる文字も文字データとして入力できますが、入力時に注意しなければならない点があります。
セルをクリックし、セルを選択しただけの状態で、セル内にカーソルがない状態において、「/」のキーを押すと、[Altキー]を押した時と同じように、リボンにアルファベットが表示される[アクセスキー]を入力し始める状態になります。

/の入力

 

セル内にカーソルがある状態では、文字データとして「/」からのデータとすることができます。

数値の大きさが変わる

「%」と「.」から入力を始めるか、『( )』で数値を囲むと、数値の大きさが変わってしまいます。

「%」から始める

数値に「%」を入力すれば、「%」の値になりますが、セルに入力する内容が「%」から始まった数字の場合も、その数字が「%」で表示されます。
「%12」と入力すれば「12%」と認識され、セルの入力される内容も「12%」になります。



「.」から始める

セルに入力する内容が「.」から始まった数字の場合、小数点以下として入力されます。0が初めに入力されなくても小数点以下になるのです。
「.12」と入力したら「0.12」として認識されます。

.12

数値を括弧で囲む

数値を『( )』で囲むと、その数値が負の数値として認識されます。
「(1)」と入力すると、「-1」として認識されます。

(1)

自動的に日付に変更される

Excelは、日付や時刻に見えるものを自動で日付や時刻に変更します。

「-」や「/」と数字の組み合わせが日付になる

「1-2」と入力すると「1月2日」の日付になります。
「2020/1/1」と入力すると「2020/1/1」の日付と認識します。
「1月10日」と入力すると、そのまま「1月10日」の日付データになります。

日付データ

 

ただし、「1-2-」や「2020/1/1~」や「1月10日締め切り」など、他の文字が入力されていれば、文字データになります。
先頭に半角空白を入れ、「 1-2」と入力した場合も文字列になります。

日付に合わせた文字列

「:」と数字の組み合わせが時刻になる

「1:」と入力すると「1:00」の時刻になります。
「0:1」と入力すると「0:01」の時刻になります。
後ろに半角空白を入れ、「1: 」と入力した場合も、「1:00」の時刻になります。

時刻

 

先頭に半角空白を入れ、「 1:」と入力した場合は文字列になります。

時刻と空白

分数の入力

「3分の2」を入力しようとして、「2/3」を入力すると、Excelは「2月3日」の日付として判断します。

分数を入力すると日付になる

 

分数の入力方法は、例えば「2.25」を『「2」と「4」分の「1」』と分数で表しますが、この場合の入力方法は「2」、半角空白、「1/4」と入力すると、「2 1/4」という表示になります。
そのセル内の正体を、数式バーで確認すると、「2.25」と、『2と4分の1』の数値が入力されていることがわかります。

分数の入力

 

「1」を超えていない「1/3」の入力方法は、「1」の桁はないので、「0」、半角空白、「1/3」という入力とします。

分数の入力

 

携帯電話番号を表示したい

携帯電話番号は「0」から始まる3桁、4桁、4桁の11桁の数値で表されます。
架空の携帯電話番号「(020)0001-0002」の携帯電話番号を数値のみの「02000010002」と入力した場合、はじめの「0」が表示されず、「2000010002」という数値として認識されます。

携帯電話番号の入力

 

このはじめの「0」が表示されない場合の対処法はこちらの記事でも紹介していますが、特に入力するものが携帯電話番号と決まっているのであれば、簡単に設定できます。
セルの書式設定で、[表示形式]タブの[その他]の中の[ロケール]で、[イタリア語(イタリア)]を設定し、「Numero Telefonico」を選択すると、日本の携帯電話番号と同じ、「(3桁)4桁-4桁」の表示形式になり、「(020)0001-0002」と表示されます。

携帯電話番号の設定

 

[ロケール]を[日本語]にして、「郵便番号」を設定すると、「3桁-4桁」という表示形式にすることができ、「0010001」と入力すると、「001-0001」という表示にすることができます。

郵便番号の設定

中国語文字やアラビア語の文字で数値を表示したい

中国語の文字や、アラビア語の文字で数値を表現する場合も、[表示形式]タブの[その他]で表示ができます。
「12345」の数字を入力しているセルに、[ロケール]で、[中国語(中国)]を設定し、「中文大写数字」を選択すれば、中国語で「壹万贰仟叁佰肆拾伍」と表示されます。

中国語の数値の表示

 

[ロケール]で、[アラビア語(サウジアラビア)]を設定し、種類の中からアラビア文字表記のいずれかを選択すれば、アラビア文字で表示されます。

ハイパーリンク関連

URLやメールアドレスに見えるものを入力すると、自動的にハイパーリンクが設定されます。

「http://」から始まるとハイパーリンクになる

セルに入力する内容が「http://」から始まった場合、URLとして認識し、自動的にハイパーリンクが設定されます。
注意書きとして「http://と入力してください」とセルに入力しただけでハイパーリンクになります。

http://から始める

「ftp://」から始まるとハイパーリンクになる

「http://」から始まる時と同じく、「ftp://」から始まっても、自動でハイパーリンクになります。
「ftp」とは、ファイルのやりとりをするアドレスで使われることがあります。

「@」が入っているとハイパーリンクになる

セルに入力する内容が「@」から始まっていなくても、セル内に「@」が入っていると、メールアドレスとして認識し、自動的にハイパーリンクが設定されます。
「1@」と入力しただけでハイパーリンクになります。
注意書きとして「メールアドレスには@が入っています」と入力してもハイパーリンクになります。

@の入った内容の入力

 

ただし「@」の前後に、「@」は記号だという意味での『「 」』『( )』の括弧記号を入力すると、ハイパーリンクにはなりません。
注意書きとして『メールアドレスには「@」が入っています』はハイパーリンクにはならないのです。

「」で囲むとハイパーリンクにならない

 

ハイパーリンクとして設定されたセルは、右クリックしてハイパーリンクの削除で解除することはできます。

ハイパーリンクの解除

 

範囲選択をして一気にハイパーリンクを解除することもできますが、その都度操作するのでは大変です。
このようなハイパーリンクの自動変換は、入力するはじめに「’」を入力する方法、予めセルの表示形式を文字列にする方法の他に、Excelのオプション設定を変更することで対処することができます。
[入力オートコレクト]機能と呼ばれる、入力時に簡単にセルの内容を入力できるようにしてくれる機能が有効になっていると起きるのです。
[ファイル]タブの左の一覧から[オプション]をクリックします。

オプション

 

表示された[Excelのオプション]の画面の左の一覧から[文章構成]を選択し、右の画面に出てくる[オートコレクトのオプション]をクリックします。

オートコレクトのオプション

 

[入力オートフォーマット]タブの[インターネットとネットワークのアドレスをハイパーリンクに変更する]のチェックを外し、[OK]ボタンをクリックします

インターネットとネットワークのアドレスをハイパーリンクに変更する

 

もう一度[OK]ボタンをクリックします。
これで自動的にハイパーリンクに変更されないようになりました。

オートコレクト機能の活用

本来、オートコレクト機能は入力を簡単にしてくれる補助機能なのですが、想定していない動作をする時があるので使いにくくなっています。
しかし、この機能を有効活用することで楽に記号を入力したり、間違いの入力を防いだりすることができます。
例えば、セルに「(c)」と入力し確定すると、「©」のコピーライト記号に自動で変わります。
また、「こんにちわ」と、わざと間違えて入力すると、正しい「こんにちは」に変更してくれます。

入力時に自動変換

 

この自動変換してくれる内容は、個人個人のユーザーが使いやすいように設定することができます。
間違った「すいません」という文字を自動的に正しい「すみません」に自動的に変更する場合は、[ファイル]タブの[オプション]の左の一覧から[文章構成]を選択し、右の画面に出てくる[オートコレクトのオプション]をクリックします。

オートコレクトのオプション

 

[オートコレクト]タブをクリックし、[修正文字列]に「すいません」、[修正後の文字列]に「すみません」と入力し[追加]ボタンをクリックし[OK]ボタンをクリックします。

オートコレクトに登録

 

これでセルに「すいません」と入力し、確定すると自動で「すみません」に変更されます。

オートコレクト機能を無効にする入力

「こんにちわ」と入力すると、「こんにちは」に自動変換されますが、「こんにちわは、間違いです」と入力しても「こんにちはは、間違いです」に変換されます。
自動変換しないようにするには、[オートコレクト]をしない設定でもできますが、計算式を入力することによってもできます。
="こんにち"&"わは、間違いです"」と計算式で入力すれば、「こんにちわは、間違いです」と表示することができます。

Excel業務をもっと「ラク」にするなら

Excel業務を自動化したい!
Excelをデータベース化したい!

 

Back to top