インプットボックスを利用して入力した回数処理をする方法

インプットボックスを利用して処理する回数を入力させます。

インプットボックスに入力された文字列が数値として認識できる場合は、入力された値が数値として扱われます。

 

インプットボックスを利用して入力した回数処理をするサンプル

n = INPUT("繰り返す回数を入力してください", 10)
IFB VARTYPE(n) = VAR_EMPTY
 PRINT "キャンセルされました"
ELSEIF VAL(n) = ERR_VALUE
 PRINT "無効な値です"
ELSE
 FOR i = 1 TO n
  PRINT i + "回目処理中"
 NEXT
ENDIF

 

INPUT関数リファレンス

INPUT関数のリファレンスをマニュアルから転載します。

戻値 = INPUT( 表示メッセージ, [デフォルト値, パスワードフラグ, X, Y] ) 
引数
 表示メッセージ: インプットボックスに表示するメッセージ
 デフォルト値: デフォルトの値 として表示
 パスワードフラグ: TRUE にすると文字は全てアスタリスク表示 (デフォルト FALSE)
 X, Y: 表示位置 (デフォルトは中央)
戻値
 入力されたデータ

 ※ ファイルドロップによりファイル名の設定可 (複数選択時はタブにて結合される)

 

インプットボックスで数値が入力されたかチェックする方法

インプットボックスは文字列も数値も入力することができるので、何が入力されたのかチェックすることで予期せぬエラーを防ぐことができます。

インプットボックスでは数値として認識できるものを入力すると戻り値が数値として扱われるようです。

 

インプットボックスで数値が入力されたかチェックするサンプル

数値以外も試しに入力してみてください。

n = INPUT("数値を入力してください")
IFB VARTYPE(n) = VAR_EMPTY
 PRINT "キャンセルされました"
ELSEIF VAL(n) = ERR_VALUE
 PRINT "数値ではありません"
ELSE
 PRINT "数値です"
ENDIF

 

INPUT関数リファレンス

INPUT関数のリファレンスをマニュアルから転載します。

戻値 = INPUT( 表示メッセージ, [デフォルト値, パスワードフラグ, X, Y] ) 
引数
 表示メッセージ: インプットボックスに表示するメッセージ
 デフォルト値: デフォルトの値 として表示
 パスワードフラグ: TRUE にすると文字は全てアスタリスク表示 (デフォルト FALSE)
 X, Y: 表示位置 (デフォルトは中央)
戻値
 入力されたデータ
 (キャンセル時はEMPTY)

 ※ ファイルドロップによりファイル名の設定可 (複数選択時はタブにて結合される)

 

VARTYPE関数リファレンス

VARTYPE関数のリファレンスをマニュアルから転載します。

戻値 = VARTYPE( 変数, [変換タイプ] )
引数
 変数: 型を調べる変数
 変換タイプ: 型を変換する場合にタイプ指定
戻値
 型
  VAR_EMPTY (0)   // Empty
  VAR_NULL (1)   // Null
  VAR_SMALLINT (2) // 2バイト整数(符号付)
  VAR_INTEGER (3)  // 4バイト整数(符号付)
  VAR_SINGLE (4)  // 単精度浮動小数点値
  VAR_DOUBLE (5)  // 倍精度浮動小数点値
  VAR_CURRENCY (6) // 通貨型
  VAR_DATE (7)   // 日付型
  VAR_BSTR (8)   // 文字列型
  VAR_DISPATCH(9)  // オブジェクト
  VAR_ERROR (10)  // エラー値
  VAR_BOOLEAN (11) // ブール型
  VAR_VARIANT (12) // バリアント
  VAR_UNKNOWN (13) // 未定義のオブジェクト
  VAR_SBYTE (16)  // 1バイト整数(符号付)
  VAR_BYTE (17)   // 1バイト整数(符号なし)
  VAR_WORD (18)   // 2バイト整数(符号なし)
  VAR_DWORD (19)  // 4バイト整数(符号なし)
  VAR_INT64 (20)  // 8バイト整数(符号付)
  VAR_ARRAY(8192[$2000]) // 配列
 変換タイプが指定された場合には、変換されて値を返す

 

VAL関数リファレンス

VAL関数のリファレンスをマニュアルから転載します。

戻値 = VAL( 文字列, [エラー値] )
引数
 文字列: 数値に変える文字列
 エラー値: 数値に変換できない場合に返す値
戻値
 数値
 数値変換できない場合はエラー値を、デフォルトでは ERR_VALUE (-999999)を返す

 

全角の数字を数値に変換する方法

プログラムやパソコンに強い人なら全角の数字が文字列であることをご存知かと思います。

全角の数字では文字列として扱われてしまうので数値として扱いたい場合は数値型に変換させる必要があります。

UWSCではVAL関数を利用することで簡単に出来てしまいます。

全角の数字でも半角の数字の文字列でも数値型に変換することができるので便利です。

 

全角の数字を半角に変換するサンプル

単純に数値に変換させます。

n = VAL("20")

 

全角の数字を半角に変換するサンプルその2

数値に変換されたことを確かめるために加算させています。

n = VAL("20") + 2
PRINT n

全角の数字を数値に変換する方法実行結果

 

VAL関数リファレンス

VAL関数のリファレンスをマニュアルから転載します。

戻値 = VAL( 文字列, [エラー値] )
引数
 文字列: 数値に変える文字列
 エラー値: 数値に変換できない場合に返す値
戻値
 数値
 数値変換できない場合はエラー値を、デフォルトでは ERR_VALUE (-999999)を返す

 

文字列を数値に変換する方法

文字列を数値に変換させたい場合はVAL関数を利用します。

文字列が数値に変換できるか事前にCHKNUM関数を利用してチェックしたほうが安全です。

 

文字列を数値に変換するサンプル

before = "0123"  // 文字列として数値を設定
PRINT before  // 試しに出力させてみる

after = VAL(before) // 数値に変換したものを変数に代入する
PRINT after   // 数値に変換したものを出力させる

after = after + 1 // 数値に変換されたことを確認するために計算させてみる
PRINT after   // 結果が124なら成功

文字列を数値に変換する方法実行結果

 

VAL関数リファレンス

VAL関数のリファレンスをマニュアルから転載します。

戻値 = VAL( 文字列, [エラー値] )
引数
 文字列: 数値に変える文字列
 エラー値: 数値に変換できない場合に返す値
戻値
 数値
 数値変換できない場合はエラー値を、デフォルトでは ERR_VALUE (-999999)を返す