- ベストアンサー
度々ですが、またExcelの使い方で…
標準形式のセルに、例えば「2+3」や「15*64」、「34/5」などのように先頭に=(イコール)のない四則計算が入力されています。 その計算結果を表示させたいのですが、何か方法はありますか? 計算結果は別のセルに表示させるのでも構いません。 少なければ手入力で=を付けても良いのですがセルの数が100前後あるので、なんらかの方法がないかお尋ねしてみました。 よろしくご教授ください。
- みんなの回答 (9)
- 専門家の回答
質問者が選んだベストアンサー
エクセルアドイン TEXTCALCまたはTEXTCALC2を使用する方法もあります。 http://hp.vector.co.jp/authors/VA029807/TEXTCALC2.html
その他の回答 (8)
- imogasi
- ベストアンサー率27% (4737/17069)
http://officetanaka.net/excel/function/tips/tips57.htm をご覧あれ。 こういう問題でも、すでに回答はWEBに載っている。 今までもこの記事や類似の質問を見たことがあったが、今回は「文字列の式 計算」で照会して、すぐ記事が出てきた。 しかし、できるからといって、あまりこの手のエクセル4.0マクロにこだわらない方がよいのでは。
お礼
ご回答ありがとうございました。
- msMike
- ベストアンサー率20% (364/1804)
既にかなりの数の回答が寄せられていますが、参考までに確認させてください。 ご質問内容は本来の Excel の使い方から逸れておりますが、なぜ Excelワークシートに「=(イコール)のない四則計算が入力」されているのですか? 差し支えなければ、その目的等を含めて、参考までに教えてください。
お礼
ご回答(ご質問?)ありがとうございます。 そのデータは仕事の取引先で作られたものでして、「一覧リストを紙に印刷できれば良い」くらいの考えなんじゃないかなと思われます。 ”本来の Excel の使い方”と仰るのも分かります。 ただ、Excelを「表作りソフト」として使ってる人も結構いるんですよね^^;
- naoto0216
- ベストアンサー率46% (183/391)
わたしだったら・・・ 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列を選択した状態で、@を=に置換すればよいです。
お礼
ご回答ありがとうございました。 なるほど、です。こういうやり方もあるのですね。 とても参考になりました。
- chie65536(@chie65535)
- ベストアンサー率44% (8740/19838)
Visual Basic Editorを開いて「標準モジュール」に以下の関数を定義します。 Public Function 計算(Val As Variant) As Variant 計算 = Evaluate("=" & Val) End Function 計算結果を表示させたいセルに =計算(A1) などと書いて、計算させて下さい(上記例では、A1セルに「2+3」と入力されていたら「5」が表示されます) このように「=計算(計算させたいセル)」という式を書いたら、添付画像のように、このセルを「必要なだけコピペ」すれば「100個分がまとめて計算」されます。
お礼
ご回答ありがとうございました。 先の回答のVBAを使ったものと比べ関数の定義がシンプルですね。 参考にさせていただきます。
- kkkkkm
- ベストアンサー率66% (1719/2589)
セルに入力した数式を別のセルで計算する http://officetanaka.net/excel/function/tips/tips57.htm 上記のサイトを参考にしてください。
お礼
ご回答ありがとうございました。 設定に少し手数が掛かりますが、後の変更などを考えればとても便利ですね。
- mshr1962
- ベストアンサー率39% (7417/18945)
="="&A1 のようにして "=2+3"、"=15*64"、"=34/5"のように表示させてください。 結果をコピーして値として貼り付けを行った後に データタブの区切り位置を実行すれば、式の結果が表示されます。
お礼
ご回答ありがとうございました。 すばらしい。VBAを使わずにできたのには感動です。
- mpascal
- ベストアンサー率21% (1136/5195)
お礼
先に回答いただいた内容と一緒でした。 ご回答ありがとうございました。
- Prome_Lin
- ベストアンサー率42% (201/470)
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 かえって、邪魔くさいかな?
お礼
ご回答ありがとうございました。 できました。すばらしいです。 VBAが分かればいろんなことができそうですね。 ありがとうございました。
お礼
うわっ、すんごい! これは便利!