- ベストアンサー
関数式の結果が表示されない
エクセル2003を使用しています。 前任者が作ったシートがあるのですが、 一部の関数式を変更した時に結果が表示されずに関数式が表示されてしまいます。 変更前も同じセルには関数式が入っており、その結果は表示されています。ですがそのセルの関数式を変更すると結果ではなく、式のみが表示されてしまいます。 シートは複数で、 たとえば、 シート1のセルA1の内容が シート2のセルA1に入るように参照しています。 下記のような式がシート2に入ってます。 =Sheet1!A1 表示はちゃんと参照先の文字が入ってます。 この式の入ってるところに=LEN(Sheet1!A1)など入れたら普通は文字数が出ると思うのですが、=LEN(Sheet1!A1)と表示されます。 プロテクトなど色々考えられると思うのですが、どういうことが考えられますか?
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
> もう少し効率のいい方法は無いのでしょうか? VBAでもよければ、次の手順で実行してみてください。 ・計算式がそまま表示されている範囲を選択します。 ・そのシートのシート名タブを右クリックして「コードの表示」を指定します。 ・開いたコードウィンドウに下記コードをコピーして貼り付けます。 ・貼り付けたコードの何処かにカーソルがある状態で、[実行]-->[Sub/ユーザーフォームの実行]を クリックします。 ・先程貼り付けたコードを全部消去します。 ・Alt+ Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。 これで、一気に計算結果が表示されると思いますが、如何ですか。 Sub 式に変換() Dim Rng As Range Dim Fml As String Selection.NumberFormatLocal = "G/標準" For Each Rng In Selection Fml = Rng.Value Rng.Formula = Fml Next Rng End Sub
その他の回答 (7)
- at121
- ベストアンサー率41% (85/206)
そのセルのみの設定なら そのセルを削除して 正常のセルをコピーしてそこに挿入し 式を書き換える。
補足
変更したいセルはかなりの量で、ドラッグアンドドロップなら何とかなるのですが、1個ずつは難しいです。
- ja7awu
- ベストアンサー率62% (292/464)
式を入力した後で、書式を「標準」に変更しただけでは、ダメなんですよ。 セルで編集し直すか 数式バーで <Enter>すると計算結果が表示されるでしょう。
お礼
ja7awuさんの方法で出来ました。ありがとうございました。でも、これだとセルの1つずつやっていかなくてはならないみたいです。なにぶん数が多いので、もう少し効率のいい方法は無いのでしょうか?
- ja7awu
- ベストアンサー率62% (292/464)
> 参照先の文字が入ってます。 ということは、以前は、「文字」を表示していたのですから 式を入力する時点のセル書式が「文字列」になっているだけ と思いますが・・・
補足
説明不足ですみません。 文字ですが、回答3で書式の変更をすでにやってます。 一般も文字列でも。。 でも、だめなんです。
- mshr1962
- ベストアンサー率39% (7417/18945)
#3のmshr1962です。 >全シート(ブック)の書式を初期設定に戻す方法などはあるのでしょうか? シートのタブをCTRLを押しながら選択するか 右クリックして「すべてのシートを選択」 シート全体を選択(A列の左、1行の上の部分をクリック)してから 「編集」「クリア」「書式」で書式をすべて標準にできます。 ただ、今回の場合、シート又はブックが壊れている可能性もあるので 内容をコピーして新しいブックに貼り付けしたほうが良いかもしれません。
お礼
これも試しましたが、だめです。 新しい列を挿入した場合は式の結果が表示されます。 新しいシートでも大丈夫でした。でも既存のシートでなぜ駄目なのでしょうか? 壊れてるのでしょうか?
- mshr1962
- ベストアンサー率39% (7417/18945)
変更前は結果が表示されているなら、表示形式が文字列の可能性が高いです。 セルの書式設定で表示形式を適切なものに変更してみてください。 分からない場合はとりあえず、標準を選択すれば良いでしょう。 数式全部が表示されている場合は、#1,2の方のおっしゃる通りです。
補足
ウインドウオプションもセルの書式設定でも試しましたが結果が出ません。 全シート(ブック)の書式を初期設定に戻す方法などはあるのでしょうか?
- info22
- ベストアンサー率55% (2225/4034)
EXELL2002を使っていますが、以下のようにすれば、関数式を関数値表示に戻せます。 EXCELL2003でも同じように設定して解決できませんか? EXCELLのツールバーの「ツール」→「オプション」→「表示」タブの「ウインドウオプション」→「数式」の前のチェックをはずす→「OK」
お礼
回答ありがとうございます。 残念ながらウインドウオプションでは解決できませんでした。
- Piazzolla
- ベストアンサー率44% (88/196)
[ツール]→[オプション]→表示で、 下のほうに、「ウィンドウオプション」があると思います。 □数式(R)のチェックを外します。
お礼
回答ありがとうございます。 残念ながらウインドウオプションでは解決できませんでした。
お礼
VBAですかぁ~。敷居が高いかも。。 でも昨日の緊急は手作業でなんとか追いつきました。 残りのブック30以上なので、VBAも検討します。ありがとうございました。