横置円筒槽の液量について

横置円筒槽の液量

 
円筒状の槽が横向きに設置されている時の液高さと液量について以下にメモ。

cylinder_01

cylinder_02

扇部(①+②)の面積
1/2・θ・r2 ・・・(1)

①の面積
1/2・(sinθ)(cosθ)・r2 ・・・(2)

②の面積 (1) – (2)
1/2・θ・r2・(θ – (sinθ)(cosθ) ) ・・・(3)

これより、高さ(h)まで液を入れた時の液量は以下となる。
1/2・θ・r2・( θ – (sinθ)(cosθ) )・2・L

cylinder_03

 
スポンサーリンク





ユーザー定義の書式について

Excelでの有効数字の表示について

 
Excelで数字データを取り扱うとき、多くの場合は表示させる有効数字を自分で揃える必要がある。大抵は指数表示にして小数点以下の桁数を指定しておけば良いのだが、時々、指数表示せずに有効数字を3桁や4桁に揃えたいときがあるので、”セルの書式設定”のユーザー定義で設定する方法についてメモしておく。
 

「セルの書式設定」について

 
セルの書式設定では、2つまでの条件について設定することができる。たとえば、有効数字4桁で、10未満の数字は「*.***」、100未満の数字は「**.**」と表示させる場合は、セルの書式設定→ユーザー定義から以下のように設定する。

[<10]0.000;[<100]00.00;G/標準
( 条件は[ ]で指定し『;』で区切る:”条件1″;”条件2″;”それ以外” )

 
excel_cell_format_01
 
ただし、この条件で1000以上の数字を入力すると、上図のように「1000.0」と表示される。これも有効数字4桁で「1000」と表示したい場合には、『条件付き書式』で複数の条件を設定することで表示することができる。

「条件付き書式」について

 
条件付き書式を設定したいセルを選択して、「ホーム」タブの「条件付き書式」から「ルールの管理」を選択する。「新規ルール」から1000以上の場合は整数表示、100以上の場合は小数点以下第1位まで、10以上の場合は小数点以下第2位まで・・ というように任意の条件を設定して「適用」すると「条件付き書式」を設定することができる。
 
excel_cell_format_02
 
また、この「条件付き書式」の書式をコピー&ペーストする方法については、Microsoftの”Office”のページの記載のとおり、[ホーム]、[書式のコピー/貼り付け] の順にクリックし、書式を適用するセルまたはセル範囲にペイントブラシでドラッグして条件付き書式を貼り付けることができた。

 
スポンサーリンク





特定の文字の検索について

Excelでの文字の検索

 
文字を検索する際は、FindのFが覚えやすいこともあり、WordでもExcelでも「Ctrl+F」から「検索ウィンドウ」を表示するが、特にExcelで任意のセルに入力した文字を検索する方法についてのメモ。

COUNTIF関数とワイルドカード

 
find_01
 
上図のようにA列にデータが入力されているとき、キーワード(D1セル)で”始まる”、”含む”、”終わる”データの数を検索する場合は、ワイルドカード(*)を用いて関数を入力する。

  • キーワードで始まる:=COUNTIF(A2:A11,D1&”*”)
  • キーワードを含む:=COUNTIF(A2:A11,”*”&D1&”*”)
  • キーワードで終わる:=COUNTIF(A2:A11,”*”&D1)

また、データのある列(A列)の隣に、見出し行(1行目)の文字を含む場合に「1」を返す列(B列)を示す場合は、

=if(countif(A2,”*”&B1″*”),1,””)

とすればよい。

find_02

 
スポンサーリンク





完全混合槽の濃度変化について

完全混合槽の濃度計算

 
貯槽に初期濃度C0 mol/Lの試薬がV m3入っているとき、C1 mol/Lの試薬がF m3/hで流入する場合のt時間後の貯槽内および流出液(F m3/h)の濃度 C2 mol/Lを推算する場合についてメモ。
 
complete_mixing_01
 
槽内は完全混合しているとした場合、槽内の濃度変化は以下となる。
 
d (V・C2)/dt = F・C1-F・C2
V・dC2/dt = F・C1-F・C2
 
ここで、上式を変数分離して
 
V/F ・dC2/dt = C1-C2
dC2/C1-C2 = F/Vdt
 
これを積分。
 
-ln|C1-C2| = F/V・t+C
 
ここで、t=0のときC2=C0なので、Cは以下となる。
 
C=-ln|C1-C0|
 
これより、t時間後の貯槽濃度C2は以下式で推算される。
 
-ln|C1-C2| = F/V・t-ln(C1-C0)
ln|C1-C2| = -F/V・t+ln|C1-C0|
|C1-C2| = exp(-F/V・t)・|C1-C0|
 (前提条件より C1>C0のときはC1>C2であり C1<C0のときは C1<C2)
∴ C2 = C1-(C1-C0)・exp(-F/V・t)
 
complete_mixing_02
 
 
スポンサーリンク





FORMULATEXTについて

FORMULATEXT関数について

 
Excelではセルに数式を入力すると計算結果が表示されるが、”解”を表示したセルを参照してその数式を表示することができないかと調べてみたところ、EXCEL2013では、『FORMULATEXT関数』というのがあるようだ。職場では、EXCEL2010を使用しているのでこの関数を使用することはできないのだが、VBAのFunctionプロシージャで同様のユーザー定義関数のようなものを登録してみると、意外と使い勝手が良かったので簡単にメモ。
 

VBAへの登録

 
Functionプロシージャは以下のように登録する。

Function プロシージャ名(引数 As データ型) As 戻り値のデータ型
プロシージャ名 = 戻り値
End Function

 
VBAで数式を取得するのにはFormulaプロパティ(.formula)を使えばよいので、標準モジュールに以下のマクロを記載。

Function formulatext(n As Range) As String
formulatext = n.Formula
End Function

 

サンプル

 
formulatext_01
 
スポンサーリンク