完成した「二重価格プライスカード」を得意先に見せると新たな要望が(マジで!)
売価は小数点切上げ
必要に迫られた機能だけを本を斜め読みしながら勉強してきた我流プログラマーの私
切上げプログラム
作ったことないな・・・
さて、切上げってどうするの?
ネットで拾ったスクリプトを参考に作ったプログラムがこれ
切上げプログラム
[code lang=”vb”]
Sub MakeTAXonPRICE(myOffPrice As Currency, myTAX As Single)
Dim myOnPrice As Currency
myOnPrice = myOffPrice * myTAX
If Me![opt切上] = True Then
Me![売価2税込] = IIf(myOnPrice = Int(myOnPrice), Int(myOnPrice), Int(myOnPrice + 1))
Else
Me![売価2税込] = Int(myOnPrice)
End If
End Sub
[/code]
税込売価10%ボタン
[code lang=”vb”]
Private Sub btn10on_Click()
Dim myPrice As Currency
myPrice = Me![売価]
Call MakeTAXonPRICE(myPrice, 1.1)
End Sub
[/code]
税込売価8%ボタン
[code lang=”vb”]
Private Sub btn8on_Click()
Dim myPrice As Currency
myPrice = Me![売価]
Call MakeTAXonPRICE(myPrice, 1.08)
End Sub
[/code]
これで一行ずつの計算プログラムが完成
次は、これをベースに数百レコード対象の
「税込売価一括計算プログラム」の開発
一括税込売価計算プログラム(切上/切捨対応)がこれ
取りあえず8%食品用
[code lang=”vb”]
Private Sub btn売価一括計算_Click()
Dim cn As ADODB.Connection
Set cn = Application.CurrentProject.Connection
Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset
rs.Open "Tプライスカード", cn, adOpenKeyset, adLockOptimistic
Dim myOffPrice As Currency ’外税売価
Dim myOnPrice As Currency ’内税売価
Dim myTax As Single ’消費税率
myTax = 1.08
Do While rs.EOF = False
myOffPrice = rs![売価] myOnPrice = myOffPrice * myTax
Me![txtTSET2] = myOnPrice
If Me![opt切上] = True Then
rs![売価2税込] = IIf(myOnPrice = Int(myOnPrice), Int(myOnPrice), Int(myOnPrice + 1))
Else
rs![売価2税込] = Int(myOnPriceL)
End If
rs.Update
rs.MoveNext
Loop
rs.Close
cn.Close
End Sub
[/code]
普通に動きました
MS-Access
スゲ~便利!
開発、超簡単!
でもリボンインターフェイス大嫌い
開発画面、MS-Access2003の頃に戻してくれないかな・・・
開発が30%早くなるのにな