完成した「二重価格プライスカード」を得意先に見せると新たな要望が(マジで!)
売価は小数点切上げ
必要に迫られた機能だけを本を斜め読みしながら勉強してきた我流プログラマーの私
切上げプログラム
作ったことないな・・・
さて、切上げってどうするの?
ネットで拾ったスクリプトを参考に作ったプログラムがこれ
切上げプログラム
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
税込売価10%ボタン
Private Sub btn10on_Click() Dim myPrice As Currency myPrice = Me![売価] Call MakeTAXonPRICE(myPrice, 1.1) End Sub
税込売価8%ボタン
Private Sub btn8on_Click() Dim myPrice As Currency myPrice = Me![売価] Call MakeTAXonPRICE(myPrice, 1.08) End Sub
これで一行ずつの計算プログラムが完成
次は、これをベースに数百レコード対象の
「税込売価一括計算プログラム」の開発
一括税込売価計算プログラム(切上/切捨対応)がこれ
取りあえず8%食品用
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
普通に動きました
MS-Access
スゲ~便利!
開発、超簡単!
でもリボンインターフェイス大嫌い
開発画面、MS-Access2003の頃に戻してくれないかな・・・
開発が30%早くなるのにな