SQL = " SELECT SGN(フィールド名) FROM テーブル名 "
又は、
SQL = " SELECT SGN(フィールド名) AS 名前 FROM テーブル名 "
Set rs = CurrentDb.OpenRecordset(SQL)
SGN (サイン)で、正負か0かを調べることができます。
例: SQL = " SELECT SGN(電圧) AS ポート電圧 FROM 制御基板 "
制御基板テーブルの電圧フィールドの正負状態を取得します。
取得値はポート電圧の名前になります。
フィールド値「 0 , -1 , 2 , -3 , 4 」の実行した場合、「 0 , -1 , 1 , -1 , 1 」になります。
サンプルソフト
[実行時の画面]
「符号を求める SGN関数」ボタンをクリックすると、
元の数値と符号を表す、1か-1を表示します。
正の場合は1が表示されています。
負の場合は-が表示されています。
0の場合は0が表示されています。
■実行画面
[サンプルデータ テーブル]
データID 数値
10 1
11 -2
13 0
16 15
17 -20
18 100
[コード]
Option Compare Database
Private Sub コマンド8_Click()
Dim SQL As String
Dim rs As Recordset
Me!テキスト1 = "数値" & vbCrLf
Me!テキスト2 = "符号" & vbCrLf
SQL = "SELECT 数値,SGN(数値) FROM サンプルデータ"
Set rs = CurrentDb.OpenRecordset(SQL)
Do Until rs.EOF
Me!テキスト1 = Me!テキスト1 & rs(0) & vbCrLf
Me!テキスト2 = Me!テキスト2 & rs(1) & vbCrLf
rs.MoveNext
Loop
Set rs = Nothing
End Sub
サンプルソフトのダウンロード