No.1
- 回答日時:
直接は無理ですが、間接的にならできます。
間接的というのは、以下のような意味です。
例)
セルD1に 30000(数値で入力)
セルD2に 6(数値で入力)
セルD3に 0.53(数値で入力)
セルA1(30000×6÷0.53と表示させる)に
=D1&"×"&D2&"÷"&D3
と入力。
セルB1(計算結果を表示させる)
=ROUND(D1*D2/D3,0)
と入力。
ついでに、セルB1に対して、セルの書式設定の表示形式で、ユーザー定義を選び、種類を「(#,##0)_ 」とすれば (339,623)の表示になります。
質問に答えていただいて有難うございます
仕事から帰りしだいやってみます。
たくさんの皆さんに回答していただきましたので
期待が持てました
有難うございます。
No.4
- 回答日時:
標準の機能だけでどうしても数式入力をしたいのなら、マクロを使うとある程度のことはできます。
(お望みのこととは違うと思いますが)Sub calc(f As String, t As String)
Range(t).FormulaLocal = "=" & Range(f).Text
End Sub
という関数を用意します。次にボタンを作成してボタンのコードに
Sub ボタン1_Click()
Call calc("a1", "c1")
End Sub
のように書きます。(A1のセルに入っている式を計算した結果がC1に表示されるように見えます。C1には値ではなく、式が入ります)
"a1"が式が入っているセルの名前 "c1"が値(実際は式)を入れるセルの名前です。
いくつもある場合は、Call calc(...)を並べます。
きちんとした式になっていないとエラーになりますが。
質問に答えていただいて有難うございます
仕事から帰りしだいやってみます。
たくさんの皆さんに回答していただきましたので
期待が持てました
有難うございます。
No.5
- 回答日時:
計算式が、常に A×B÷C という条件であれば、
計算式がA1のセルに入力されている場合は、B1のセルに
=ROUND(LEFT(A1,FIND("×",A1,1)-1)*MID(A1,FIND("×",A1,1)+1,FIND("÷",A1,1)-FIND("×",A1,1)-1)/MID(A1,FIND("÷",A1,1)+1,LEN(A1)-FIND("÷",A1,1)),0)
と入力すれば、計算できます。
この回答への補足
答えていただいて有難うございます。
計算式が、常に A×B÷C という条件ではないのです。
質問の仕方がだめでした
A×B×C もありますし
A-B÷Cみたいなのもあります。
すいませんでした
No.6
- 回答日時:
シートのChangeイベントに下記を貼りつけ。
A列へ全角で数*数/数の順序で入する。*/はこの順序で必ず入力するものとする。B列に答え、C列に四捨五入値が入ります。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 Then
s = StrConv(Target, vbNarrow)
s = Replace(s, "*", ",")
s = Replace(s, "/", ",")
p = Split(s, ",")
MsgBox p(0)
MsgBox p(1)
MsgBox p(2)
Cells(Target.Row, 2) = p(0) * p(1) / p(2)
Cells(Target.Row, 3) = WorksheetFunction.Round(Cells(Target.Row, 2), 0)
End If
End Sub
こんなに複雑になると言う例で上げます。
すいませんでした。
質問の仕方が悪かったです。
-も入りますし+も入ります
6000×9000÷0.82+800となることもあります
すいません。
質問に対し考えて頂いたこと
本当に有難うございました。
No.7
- 回答日時:
やはりマクロかな?
選択して実行すると、隣りのセルに答えを出します。
Sub myCalc()
Dim r As Range
For Each r In Selection
With Application.WorksheetFunction
s = .Substitute(r.Text, "×", "*")
s = .Substitute(s, "÷", "/")
s = .Substitute(s, "+", "+")
s = .Substitute(s, "-", "-")
r.Offset(0, 1).NumberFormat = "#,##0"
r.Offset(0, 1).Value = "=round(" & s & ",0)"
End With
Next r
End Sub
有難うございました。
すごいです。
VBAてほんとにすごいです。
これで電卓から開放されます。
papayukaサン本当にありがとうございます。
またよろしくお願いします。
No.8ベストアンサー
- 回答日時:
ユーザー定義関数を使用する方法ですが、もし、これで宜しかったら次の手順で
テストしてみてください。
■ 操作手順
1.Alt + F11 または、メニューから[ツール] --> [マクロ]-->
[Visual Basic Editor] をクリックします。
2.メニューから [挿入]--> [標準モジュール] をクリックします。
3.モジュールウィンドウに下記コード(6行)をコピーして貼り付けます。
4.Alt + Q (または、右上隅の×)でウィンドウを閉じ、シートに戻ります。
これで STRENZAN 関数が使用できます。
( + や- も使えます。全角でもOK)
セルA1に 30000×6÷0.53 を入力します。
例えば、セルB1に =ROUND(STRENZAN(A1),0) の計算式を設定します。
これで B1には、文字列の演算結果を四捨五入し、339623 が表示されます。
Function StrEnzan(Shiki As String) As Variant
Shiki = Replace(Shiki, "×", "*")
Shiki = Replace(Shiki, "÷", "/")
StrEnzan = Application.Evaluate(Shiki)
Application.Volatile
End Function
お答え有難うございました。
うーん・・・すごすぎて自分には何がなにやらわかりませんがja7awuサンの言われたとおりに進んでいくとうまくできました。
ありがとうございます。
初心者でもわかる丁寧なお答え本当に有難うございました。
又よろしくお願いします。
No.9
- 回答日時:
こんばんは
A1に 30000×6÷0.53 と記載があり
B1に計算結果を表示させるのであれば
・B1を選択
・メニューの 挿入 名前 定義
名前の欄に適当な名前 (例 siki)
参照範囲欄に
=EVALUATE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE("="&A1,"+","+"),"-","-"),"×","*"),"÷","/"))+NOW()*0
・B1に式 =ROUND(siki,0)
この回答への補足
有難うございました
うまくできました。
挿入 名前 定義 ですか・・・
はじめて知りました。
過去の質問の中にもでていましたが
自分で質問しなければ、どこにあるのかすら分かりませんでした。
定義を勉強してみたいのですが普通のエクセルの本に載っているのでしょうか?
エクセルは奥が深いです
本当に有難うございました。
No.10
- 回答日時:
A1に30000×6÷0.53という文字が入っているとして
=LEFT(A1,FIND("×",A1)-1)*MID(A1,FIND("×",A1)+1,SEARCH("÷",A1)-SEARCH("×",A1)-1)/RIGHT(A1,LEN(A1)-FIND("÷",A1))
このセルの書式を、『数値/小数点以下の桁数:0/桁区切り(,)を使用する』にすれば、宜しいかと思います。
お答え有難うございました。
関数でもできるのですね・・
有難うございまた。
LEFTとかMIDは使ったことがあったのですが
これだけたくさん使うと頭の中が混乱しそうです。
でも勉強したいと思います。
feverさんそしてお答えくださった皆様に感謝です。
有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルVBAについて 2 2023/01/31 16:21
- Excel(エクセル) エクセルでセルに何らかの文字が入力されたらそれを任意の数値として認識させる方法がしりたいです。 3 2023/03/16 20:19
- 日本語 読解力の質問です(Excel含む) 12 2022/08/02 13:25
- Excel(エクセル) 条件に合った数値の合計を表示させたい関数と条件指定の方法 3 2023/05/13 16:07
- Excel(エクセル) エクセル関数について教えてください 4 2023/02/05 14:47
- Excel(エクセル) エクセルに代わる 表入力ツールについて 3 2022/12/21 21:19
- Excel(エクセル) Excelについて▶あるセルに文字を入力すると、別のセルに色がつく(条件付き書式) 1 2022/03/27 16:43
- Excel(エクセル) エクセル・セルに数式を入力してセル指定計算 2 2023/04/21 12:46
- Excel(エクセル) Excelでグラフを作りたいです。散布図でしょうか? 3 2023/02/09 12:48
- Excel(エクセル) Excel 、この式はどのように解釈すればいいのでしょうか 4 2023/02/03 08:53
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
A1セルに入力したら、入力時間...
-
参照先セルに値が入っていない...
-
Excelで同じセルに箇条書きをし...
-
IF関数で0より大きい数値が入力...
-
値を入力後、自動的にアクティ...
-
エクセルで既に入力してある文...
-
yyyy/mm/ddからyyyy/mmへの変換
-
エクセルで複数の条件で掛け算...
-
エクセルで時間の判定をしてい...
-
Excel:文字と数字の組合せ、次...
-
エクセルの数式で計算結果に文...
-
空白でないセルの値を返す方法...
-
Excelでセルに入力されたカラー...
-
エクセルで、特定のセルの内容...
-
マイナス同士の前年比
-
【エクセル】指定したセルに入...
-
Excel 分数の分子を小数点で表...
-
エクセルで10分ごとの時刻の...
-
Excel書式設定が24時間以上の設...
-
EXCELのセル上のURLを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
A1セルに入力したら、入力時間...
-
Excelで同じセルに箇条書きをし...
-
参照先セルに値が入っていない...
-
IF関数で0より大きい数値が入力...
-
エクセルで既に入力してある文...
-
Excel:文字と数字の組合せ、次...
-
空白でないセルの値を返す方法...
-
値を入力後、自動的にアクティ...
-
エクセルで時間の判定をしてい...
-
yyyy/mm/ddからyyyy/mmへの変換
-
Excelでセルに入力されたカラー...
-
エクセルの数式がかぶって、選...
-
エクセルで、特定のセルの内容...
-
エクセルで複数の条件で掛け算...
-
マイナス同士の前年比
-
入力したところまでを自動的に...
-
EXCELのセル上のURLを...
-
excel 関数にて文字を0として認...
-
バーコードが読み取れない原因...
-
ExcelVBAでセルを編集状態にす...
おすすめ情報