配合表から配合比率を計算するVBAを組みたいのですが、実際の数値ではなく計算式を表示したいです。
こちらが自分で記入したコードです。
Q列とAA列とAB列をかけて、100で2回割った結果をAC列に表示します。同じ行にすべての数値が記入されないので、AB列からそれぞれ必要な列の数値を取得しています。
Sub 配合比率仮()
Dim i As Integer
Dim AB
Dim Q
Dim AA
Range("AB3").Select
For i = 1 To 500
If ActiveCell.Value = "" Then '空白の場合下のセルへ
ActiveCell.Offset(1, 0).Select
Else '配合割合の数値がある場合
AB = ActiveCell.Value 'アクティブセルの数値の取得
Q = ActiveCell.Offset(0, -11).End(xlUp).Value '重量比率を取得
AA = ActiveCell.Offset(0, -1).End(xlUp).Value '配合割合の左列を取得
ActiveCell.Offset(0, 1) = s * t / 100 * u / 100 '製品の配合比率を計算(ここを数式にしたいです)
ActiveCell.Offset(1, 0).Select '下のセルへ
End If
Next i
End Sub
上記コードでは数値が表示されます。数式で結果を表示させる方法を教えてください。Formula/FormulaR1C1プロパティを使うと思ったのですが、うまく動くコードが書けませんでした。初心者に毛が生えたようなもので上記コードもなっていないものかとは思うのですが、どうぞお力を貸してください。
No.2ベストアンサー
- 回答日時:
数式をセットしたいのですか?
>ActiveCell.Offset(0, 1) = s * t / 100 * u / 100
s、t、u、の出処がよくわかりませんがセル番地になるのですか?
多分ですが
各セルの番地を取得して
AB = ActiveCell.Address
Q = ActiveCell.Offset(0, -11).End(xlUp).Address
AA = ActiveCell.Offset(0, -1).End(xlUp).Address
Formulaで数式をセットすればいけると思います。
ActiveCell.Offset(0, 1).Formula = "=" & AB & "*" & Q & "/100*" & AA & "/100"
No.3
- 回答日時:
確認させてください。
このコードだと、計算結果をセルに入力して、表示されるのも当然計算結果なのですが、それをどのようにしたいのでしょうか?
・計算式を表示させる(計算結果は表示されなくても良い)
・計算式を入力して、表示させるのは計算結果
添付画像は、どちらなのでしょうか?
・今はこうだけど、別なものにしたい
・このようにしたい
また、
> ActiveCell.Offset(0, 1) = s * t / 100 * u / 100
この計算式の、sとtとuは、どこから出てきたのでしょうか?
このコードは、ちゃんと動いているのでしょうか?
この回答への補足
すいません。
ActiveCell.Offset(0, 1) = s * t / 100 * u / 100
は
ActiveCell.Offset(0, 1) = AA * Q / 100 * AB / 100
でした。
申し訳ございません。
今はこのコードで数値が表示されいるのですが
、計算式を入力して、表示させるのは計算結果が希望です。
No.1
- 回答日時:
>ActiveCell.Offset(0, 1) = s * t / 100 * u / 100 '製品の配合比率を計算(ここを数式にしたいです)
「12×2.4/100×5.6/100」みたいに表示したい、って話ですよね。
でしたら
ActiveCell.Offset(0, 1) = CStr(s) & "*" & CStr(t) & "/100 *" & CStr(u) & "/100"
って感じで値を全て文字列変換し、文字列として設定してしまえばいいんじゃないかと。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルでの左のセルのコピー 3 2022/07/25 12:31
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) B列に文字がはいったらA列に数字が入るマクロードを完成させたい 4 2023/04/21 01:58
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
- Visual Basic(VBA) サブフォルダ(データ)にある複数の.xlsxファイルのSheet3のA2セルの値で01から左側をB2 2 2022/08/14 15:46
- Visual Basic(VBA) vba 重複データ合算 5 2023/07/05 18:55
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 3 2022/06/12 11:17
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
IF関数で、時間を条件にしたい...
-
エクセルで、時間の計算をした...
-
ヘッダー
-
エクセルの計算結果が0になって...
-
エクセルでの時間計算(2時間30...
-
計算結果が「0」のセルだけを「...
-
数式の計算結果により表示され...
-
EXCELの関数に関する質問です
-
エクセルで時間の差の出し方は?
-
エクセルで 足し算や割り算の...
-
excel 参照しているセルに色が...
-
二重和をExcelで計算する方法
-
エクセルで勤怠管理表で休憩時...
-
エクセル 月数を0.5ヶ月単位で...
-
エクセルで足し算と掛算を混ぜ...
-
エクセルの使い方 1日=7時間45...
-
エクセルの数字の丸め方
-
Excel 関数? 文字列に...
-
エクセルで同じ計算式を入れて...
-
エクセル 1万時間を越える際の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
IF関数で、時間を条件にしたい...
-
ヘッダー
-
エクセルの使い方 1日=7時間45...
-
エクセルで、時間の計算をした...
-
EXCELの関数に関する質問です
-
エクセルで 足し算や割り算の...
-
Excelの計算式内の文字列の一括...
-
数式の計算結果により表示され...
-
エクセルでの時間計算(2時間30...
-
TEXTCALCの使い方
-
計算結果が「0」のセルだけを「...
-
エクセル・計算式をテキストデ...
-
エクセル 1万時間を越える際の...
-
エクセルの計算結果が0になって...
-
excel 参照しているセルに色が...
-
エクセルで足し算と掛算を混ぜ...
-
AかBに入力があった時Cに反映、...
-
Excel 関数? 文字列に...
-
エクセル 月数を0.5ヶ月単位で...
-
エクセルで比率を計算
おすすめ情報