- ベストアンサー
エクセルの合計方法
エクセルに関して質問です。 一つのセルに、例えば1 + 1という式が入ってしまっている場合、答を違うセルに出したいのですが、なにか方法はありますでしょうか? いちいち、今は1をBのセル、もう一つのセルをCのセルと入れないといけません。 SUMを使用しようとしても、一つのセルの中にあるので使用できません。 宜しくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
No.3です。 補足の件について・・・ 前回の方法はVBAですが 「ユーザー定義関数」ですので、Excelに入っている関数以外に自分自身が使いやすい関数を作る! と考えてもらえば良いと思います。 (VBAをワークシート関数と同じような使い方ができるようにする) EvaluateメソッドはVBAで使用可能な関数となりますので、それを利用しただけです。 > 今後他のものにも応用できるのでしょうか? そのBookのみ有効なユーザー定義関数になります。 すなわち別Bookでは利用できませんので新しいブックでは同様の下準備が必要になります。 ※ 今回の質問に合わせた「ユーザー定義関数」ですので、その都度使いやすいユーザー定義関数を作るコトは可能です。m(_ _)m
その他の回答 (4)
- esupuresso
- ベストアンサー率44% (257/579)
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! 横からお邪魔します。 No.1さんの二番煎じになりますが、 ユーザー定義関数を使用する方法です。 Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面のカーソルが点滅しているところに ↓のコードをコピー&ペーストしてみてください。 Function 計算(セル As String) 'この行から 計算 = Evaluate(セル) End Function 'この行まで 次にExcel画面に戻ります。 仮にA列にデータがあり、B列に表示させるとします。 ※ A列セルの表示形式は「文字列」としておきます。 (万一 5/4 のような計算式がある場合、Excel的には5月4日というシリアル値として認識してしまうため) A1セル以降にデータがあるとすると、 B1セルを選択 → 数式バーの左にある「fx」をクリック → 「関数の分類」で「ユーザー定義」を選択この中に「計算」というものがありますので、それを選択した状態でOK 「関数の引数」ダイアログボックスが表示されますので、 A1セルを選択しOK これをフィルハンドルで下へコピーしてみてください。 ※ 空白セルや四則計算以外の文字列はエラーとなります。m(_ _)m
補足
できました。ありがとうございます!!! すーーーごっく助かりました。 ただFunction 計算(セル As String) 'この行から 計算 = Evaluate(セル) End Function の式はVBAだと思いますが、 もし可能ならこの式がどういう意味なのか解説してもらっていいですか? 今後他のものにも応用できるのでしょうか? よろしくお願いします。
- keithin
- ベストアンサー率66% (5278/7941)
- keithin
- ベストアンサー率66% (5278/7941)
手順: B1セルを選択する(必ず行う) ご利用のエクセルのバージョンに応じた方法で名前の定義を開始 名前 myFormula 参照範囲 =EVALUATE(!A1) と登録する 任意のセルに 1+1 と記入する その「右隣のセル」に =myformula と記入すると計算結果が現れる。
補足
ご回答ありがとうございます。 しかしできませんでした。 >名前 myFormula 保存するときのファイル名ですか? >参照範囲 =EVALUATE(!A1) B1に入力すると、この関数は間違っていますとメッセージがでます。 宜しくお願いします。
お礼
ありがとうございます!