2020年02月11日

シートをコピーした時、範囲名が増えないようにしたい

エクセルにはワークシートの任意の範囲に「名前」を付ける機能があります。A1:A9などと記述する代わりに、適当な名前を付けて管理し、式中などにも利用することができます。

200211namae1.gif

ワークシート上に(Sheet1)、データを用意して(安易なデータで失礼します)、A1:A9、C1:C9、E1:E9それぞれに「数値10」「数値20」「数値30」といった範囲名をつけてみました。

200211namae2.gif

設定した範囲名は、名前ボックスの▼マークをクリックする事で、確認することができます。

200211namae3.gif

このシートをコピーしました。「Sheet1」のシート見出しにマウスポインタを合わせ、Ctrlキーを押しながらドラッグしました。ワークシート内容は全く同じですが、同じシート名にはできないので「Sheet1(2)」という名前になっています。

200211namae2.gif

コピーしたSheet1(2)の名前ボックスの▼をクリックしても「数値10」「数値20」「数値30」の範囲名が表示されるので、一見最初のSheet1の範囲名が維持されていると思うのですが、

200211namae4.gif

「数式」タブの[名前の管理]ボタンをクリックすると

200211namae5.gif

「数値10」の名前が2つ、「数値20」も2つ、「数値30」も2つに増えているのが分かります。同じ範囲名をつける事は出来ないはずなのですが、「範囲」という項目を見ると分かるように、最初の「Sheet1」に設定していた範囲名は「ブック」、コピーしてできた「Sheet1(2)」シートにコピーされてできた範囲名は「Sheet1(2)」というシートになっています。

名前の範囲には「ブック」と「シート」の2種があります。「ブック」として設定されている名前は、そのブック内のどのシートからも参照できるますが、特定の「シート」として設定されている場合は、そのシート内からしか参照できないという違いがあります。

シートをコピーした事によって増えた範囲名は、大抵の場合不要ですから、この[名前の管理]ダイアログボックスを利用して削除してしまう事もできます。

名前ボックスを利用して設定した範囲名は、自動的に「ブック」として設定されます。[名前の定義]ボタンを押して「新しい名前」を設定する場合は、自分で範囲を選択する事ができます。

このようなシートをコピーする際に増えてしまう範囲名が不要で、最初から作りたくない場合は、シートのコピーをする際にコピーでなく新規シートから作成してください。

200211namae7.gif

まず、受け皿となる新しいシートを作成しておきます。シート見出しの右側にある+ボタンをクリックすると、新規のワークシートが追加されます。

200211namae8.gif

コピー元のシートで左上の全セル選択ボタンをクリックして、ワークシート全体を範囲選択し、[コピー]しておきます。あらかじめ作成しておいた新しいシートに[貼り付け]ることによって、Sheet1シートと同じ内容にすることができます。こうして「Sheet1」シートと全く同じ内容の「Sheet2」を作成する事ができますが、この時は範囲名はコピーされませんので、知らない間に定義している範囲名が増えてしまっていた…といったややこしい状態にならずに済みます。
posted by らぼ at 21:12| Comment(0) | エクセル | このブログの読者になる | 更新情報をチェックする

2020年01月21日

数値データが「文字列」として入力されており、数値にできません

インターネットからダウンロードしたデータの一部が「数値」として欲しいのに「文字列」になってしまいました。

200121moji1.gif

セルの中に左詰めされており、緑の三角形(エラーインジケーター)が表示されています。

200121moji2.gif

該当セルをクリックすると、黄色の「!」マークが表示され、このマークをクリックすることで、エラーインジケーターが表示された理由が表示されます。「数値が文字列として保存されています」

200121moji10.gif

だからと言って、該当データを範囲選択し、[セルの書式設定]ダイアログボックスを開いて、
200121moji5.gif

[表示形式]タブで「標準」を選択しても、状況が変わりません。
これを通常の数値に戻すのには…色々な方法がありますが、

200121moji2.gif

一番素直な方法は「!」マークをクリックして「数値に変換する」を選択する方法でしょうか。

200121moji7.gif

他には、例えば文字列として表示されている数字に「1」をかける掛け算式を作成します。
200121moji8.gif

こうする事で、掛け算の答の数値「1」を得ることができますので、これを元のセルに値複写することで、通常の数値に戻すことができます。

200121moji4.gif

あるいは、範囲選択をしておいて、[データ]タブの「区切り位置」アイコンをクリックします。

200121moji6.gif

区切り位置指定ウィザードが起動しますが、初期値のままで[完了]することで

200121moji9.gif

緑のインジケーターが消えてくれます。なぜか先頭セルだけは、この作業で数値になって右詰めになるのですが、以降の文字は左詰めのママになってしまいます。

200121moji5.gif

改めて[セルの書式設定]を使って、「表示形式」タブで「標準」を選択します。最初は、これだけでは数値に変わってくれなかったのですが、区切り位置指定ウィザードを使った後では、すんなりと数値に戻ります。


posted by らぼ at 20:43| Comment(0) | エクセル | このブログの読者になる | 更新情報をチェックする

2020年01月20日

データを入力しても、ちゃんと入らない

エクセルで「10,000」〜「16,000」の数値を1,000ごとに入力をしているのに、数値が変になる…とのご相談です。

200120syosiki1.gif

「12,000」の数値を入力しているにも関わらず、「1932/11/7」と表示されてしまっています。これは、本来カンマ表示にするべきところに日付表示が入ってしまったせいで、入力した「12,000」はシリアル値だとみなされています。シリアル値と言うのは、1900年1月1日を「1」として、毎年「1」ずつ増やして数える値の事を指します。毎日「1」ですから、1年では「365」、10年で「3,650」、100年で「36,500」増えることになり、現在2020年ですから「36,500+3,650+3,650」およそ「43,800」になっているはずです。

200120syosiki6.gif

TODAY関数を埋めて、今日の日付(2020年1月20日)を表示させておき、

200120syosiki7.gif

この日付をカンマ表示にしてみると、本日のシリアル値表示に変わります。43,850です。要するにご相談はこの逆が起こっています。「12,000」というシリアル値は、3,650で割ると、「3.****」ですから、1900年からほぼ30年経った日付を表しています。
エクセルのセルに一旦入力したデータはDeleteなどで簡単に消せても、一度設定した「書式」は「書式を削除する」という命令を出さない限り残っています。たまたまこの「12,000」を入れたセルに、かつて日付を入力した事があったはずで、入力した日付そのものは削除されていても、日付を入力した事で「日付書式」が設定されてしまっています。

200120syosiki2.gif

本来の「12,000」の表示に戻すには、日付の書式を解除して、カンマ表示などを設定すれば可能です。この状況でしたら、一番楽なのが、他の「11,000」などにかかっているカンマ表示をそのまま書式コピーしてしまう方法です。例えば「11,000」の入力されているセルをアクティブにして

200120syosiki3.gif

[書式のコピー/貼り付け]のボタンをクリックします。

200120syosiki4.gif

マウスポインタが「刷毛」のデザインに変わりますので、問題の表示の個所をクリックします。

200120syosiki5.gif

日付の書式が解除されて、カンマ表示になったため、「12,000」のデータが見えてきます。
posted by らぼ at 21:14| Comment(0) | エクセル | このブログの読者になる | 更新情報をチェックする
×

この広告は90日以上新しい記事の投稿がないブログに表示されております。