- PR -

EXCELの書式が文字列のセル参照

1
投稿者投稿内容
ESOMA
会議室デビュー日: 2005/05/10
投稿数: 7
投稿日時: 2006-04-11 12:07
何時もお世話になっております。
EXCELの同一シート内のセル参照について質問があります。

1.A1の書式を「文字列」に設定し、値を「01」と入力。

2.B1を「=A1」と入力、B1に「01」が表示される。

3.B1でF2キーを押す。B1に「=A1」と表示される。

質問、
 B1の書式が文字列に変更されてしまう。
 その後、更新しようとすると「=A1」という文字列として表示されるようです。
 設定などで常にA1の値を取得するようにすることは出来ないでしょうか。
 今は更新があるたびに一度書式を「標準」にするマクロを組んで臨時対応していますが、対象が複数あるため不便です。

よろしくお願いします。
 
ue
ぬし
会議室デビュー日: 2005/05/07
投稿数: 581
お住まい・勤務地: 広島市
投稿日時: 2006-04-11 12:49
こんにちは。

引用:

B1の書式が文字列に変更されてしまう。
その後、更新しようとすると「=A1」という文字列として表示されるようです。


この挙動に関しては Excel 2000 と Excel 2002 の仕様だそうです。
http://support.microsoft.com/default.aspx?scid=kb%3Bja%3B405393
私の手元にある Excel 2003 でも再現します。

Excel の仕様ということなので、設定の変更では改善しないと思います。
マクロで対応していくしかないかもしれません。
ESOMA
会議室デビュー日: 2005/05/10
投稿数: 7
投稿日時: 2006-04-11 14:08
ueさん
こんにちは。

仕様ですか、あきらめてマクロですね。
返答ありがとうございます。
さらだ
会議室デビュー日: 2003/07/11
投稿数: 17
投稿日時: 2006-04-11 19:51
根本的な解決にはなりませんが、書式を文字列に設定して入力するのでなく、
頭にシングルクォーテーションを付けて'01と入力してやれば、この現象は
発生しませんね。
私の場合Lotus1-2-3あがりなので、数字を文字列として入力する際は、大抵
こっちのやり方をするので、こんな妙な仕様があることはこれまでまったく
知りませんでした
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2006-04-11 22:09
引用:

ESOMAさんの書き込み(2006-04-11 12:07)より:

 設定などで常にA1の値を取得するようにすることは出来ないでしょうか。


これがしたいことですよね?
だったら、なぜ B1 セルを編集するのですか?参照元である A1 セルを編集すればいいのではないですか?

 A1 セルを編集しても更新されない? 「ツール」→「オプション」→「計算方法」で、「計算方法」を「自動」に設定。

引用:

 B1の書式が文字列に変更されてしまう。


 先に式を入力してから A1 の書式を変更すると、「標準」のままのようです。

 「自動計算セル」の編集を許可するのが、おかしいように思います。

〆 written by Jitta@わんくま同盟 on 2006/04/11
□ Microsoft MVP for Visual Developer ASP/ASP.NET October, 2005 - September, 2006
ESOMA
会議室デビュー日: 2005/05/10
投稿数: 7
投稿日時: 2006-04-12 19:40
さらださん
ありがとうございます。
その通りなんですよね、初期開発ならそれで対応するんですが、
改造要件で発生した問題なのでその対応は難しいです。

Jittaさん
ありがとうございます。
おっしゃるとおりです。
編集する必要はないです、シートの保護で基本的にはロック範囲にしています。
実際は編集するのではなく、マクロで行をコピーして参照先を変えてるんです。
そこで問題となったのです。
説明不足で申し訳ありません。

1

スキルアップ/キャリアアップ(JOB@IT)