DATAで範囲座標と文字を定義しておいて @KEYTBL DATA "A",19,169,37,151 DATA "B",38,169,56,151 : (N列分 定義) 最初に配列に読み込む RESTORE @KEYTBL FOR I=0 TO N READ MOJI$[I],TX1[I],TY1[I],TX2[I],TY2[I] NEXT タッチ判定部分は FOR I=0 TO N IF TX>=TX1[I] && TX<=TX2[I] && TY>=TY1[I] && TY<=TY2[I] THEN INC STRING$,MOJI[I]:BREAK NEXT というような感じでどうでしょう。 定義した座標や文字はキーボード描画するときにも使えるかもしれません。タッチ判定部分が何ヶ所か出るようなら、関数化したほうが良いですね。