• ベストアンサー

度々ですが、またExcelの使い方で…

標準形式のセルに、例えば「2+3」や「15*64」、「34/5」などのように先頭に=(イコール)のない四則計算が入力されています。 その計算結果を表示させたいのですが、何か方法はありますか? 計算結果は別のセルに表示させるのでも構いません。 少なければ手入力で=を付けても良いのですがセルの数が100前後あるので、なんらかの方法がないかお尋ねしてみました。 よろしくご教授ください。

質問者が選んだベストアンサー

  • ベストアンサー
  • tamao-chi
  • ベストアンサー率52% (457/875)
回答No.8

エクセルアドイン TEXTCALCまたはTEXTCALC2を使用する方法もあります。 http://hp.vector.co.jp/authors/VA029807/TEXTCALC2.html

kaisaka
質問者

お礼

うわっ、すんごい! これは便利!

その他の回答 (8)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.9

http://officetanaka.net/excel/function/tips/tips57.htm をご覧あれ。 こういう問題でも、すでに回答はWEBに載っている。 今までもこの記事や類似の質問を見たことがあったが、今回は「文字列の式 計算」で照会して、すぐ記事が出てきた。 しかし、できるからといって、あまりこの手のエクセル4.0マクロにこだわらない方がよいのでは。

kaisaka
質問者

お礼

ご回答ありがとうございました。

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.7

既にかなりの数の回答が寄せられていますが、参考までに確認させてください。 ご質問内容は本来の Excel の使い方から逸れておりますが、なぜ Excelワークシートに「=(イコール)のない四則計算が入力」されているのですか? 差し支えなければ、その目的等を含めて、参考までに教えてください。

kaisaka
質問者

お礼

ご回答(ご質問?)ありがとうございます。 そのデータは仕事の取引先で作られたものでして、「一覧リストを紙に印刷できれば良い」くらいの考えなんじゃないかなと思われます。 ”本来の Excel の使い方”と仰るのも分かります。 ただ、Excelを「表作りソフト」として使ってる人も結構いるんですよね^^;

  • naoto0216
  • ベストアンサー率46% (183/391)
回答No.6

わたしだったら・・・ A列   B列   C列 2+3  ="@"&A1 B列を値で貼り付け 15*64  ↓コピー B列を値で貼り付け 34/5   ↓コピー B列を値で貼り付け ・    ・     ・ ・    ・     ・ まず、B1に上記の数式をいれて、A列が埋まっているところまで セルにコピーします。A100まで埋まってるなら、B100までコピー。 で、B列をコピーしてC列に値ではりつけます。 そのとき、C列は @2+3 @15*64 @34/5 ・ ・ となってるはずです。 最後にC列を選択した状態で、@を=に置換すればよいです。

kaisaka
質問者

お礼

ご回答ありがとうございました。 なるほど、です。こういうやり方もあるのですね。 とても参考になりました。

回答No.5

Visual Basic Editorを開いて「標準モジュール」に以下の関数を定義します。 Public Function 計算(Val As Variant) As Variant 計算 = Evaluate("=" & Val) End Function 計算結果を表示させたいセルに =計算(A1) などと書いて、計算させて下さい(上記例では、A1セルに「2+3」と入力されていたら「5」が表示されます) このように「=計算(計算させたいセル)」という式を書いたら、添付画像のように、このセルを「必要なだけコピペ」すれば「100個分がまとめて計算」されます。

kaisaka
質問者

お礼

ご回答ありがとうございました。 先の回答のVBAを使ったものと比べ関数の定義がシンプルですね。 参考にさせていただきます。

  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.4

セルに入力した数式を別のセルで計算する http://officetanaka.net/excel/function/tips/tips57.htm 上記のサイトを参考にしてください。

kaisaka
質問者

お礼

ご回答ありがとうございました。 設定に少し手数が掛かりますが、後の変更などを考えればとても便利ですね。

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

="="&A1 のようにして "=2+3"、"=15*64"、"=34/5"のように表示させてください。 結果をコピーして値として貼り付けを行った後に データタブの区切り位置を実行すれば、式の結果が表示されます。

kaisaka
質問者

お礼

ご回答ありがとうございました。 すばらしい。VBAを使わずにできたのには感動です。

  • mpascal
  • ベストアンサー率21% (1136/5195)
回答No.2
kaisaka
質問者

お礼

先に回答いただいた内容と一緒でした。 ご回答ありがとうございました。

  • Prome_Lin
  • ベストアンサー率42% (201/470)
回答No.1

A列に式が列挙されているものとします。 また、途中に空白のセルはなく、数式が連続して並んでいるものとします。 「Alt+F11」→現れた画面のメニューから「挿入」→「標準モジュール」→現れた右側の白い大きな部分に、以下のマクロをコピー&ペーストし、「F5」で、結果が隣のB列に出ています。 Option Explicit Sub Test() Dim i As Integer For i = 1 To Range("A1").End(xlDown).Row Cells(i, 2).Value = "=" & Cells(i, 1).Value Next i End Sub かえって、邪魔くさいかな?

kaisaka
質問者

お礼

ご回答ありがとうございました。 できました。すばらしいです。 VBAが分かればいろんなことができそうですね。 ありがとうございました。

関連するQ&A