過去の桐井戸端BBS (桐ver.8)
8579 #文字位置でエラーになる 永井  博 2000/11/14-10:50
#文字位置("0〜10m","〜") を一括処理の中で利用したところ
「KU1083:データの形式に誤りがあります」のエラーになってしまいます。
対処方法がありましたらご教示ください。

8581 Re:#文字位置 についてご教示ください bebe 2000/11/14-11:09
記事番号8579へのコメント
永井博さん、こんちは。

bebeと申します。はずしてたらスイマセン。

>#文字位置("0〜10m","〜") を一括処理の中で利用したところ
>「KU1083:データの形式に誤りがあります」のエラーになってしまいます。
>対処方法がありましたらご教示ください。

この関数を使った項目が数値タイプ(整数タイプも)などではないのではないでしょうか?
勝手に想像してますが、”〜”という文字が何文字目にはいっているかを調べたいということで、
ある文字列項目にこの関数を使って置換したときにこのエラーが出たのではないかなと。

僕がこの関数使うときは、1スペースの入った漢字氏名を姓と名に分けるときなどに多用しております。

−例.−
置換 [姓]=#部分列([漢字氏名],1,#文字位置([漢字氏名],” ”)-1)

もう少しエラーが出た一括処理の情報が欲しいですね。

では。
8583 Re:#文字位置 についてご教示ください 永井  博 2000/11/14-12:04
記事番号8581へのコメント
永井です。 bebeさんご教示有難うございました。

ご指摘の内容で 「この関数を使った項目が数値タイプなどではないのではないでしょうか?」
という部分が良く理解できません。

桐8のマニュアルに記載されている下記のようにしても同一のエラーになってしまいます。
 #文字位置("ABCDEFGHIJKL","DEF")

当方の一括処理では,「0〜10m」というデータを,下限値・上限値・単位の3つのデータに区分するために
下記のように利用しています。

  &範囲="0〜10m"
  置換 [下限値]=#部分列(&範囲,1,#文字位置(&範囲,"〜")-1)
  置換 [上限値]=#部分列(&範囲,#文字位置(&範囲,"〜")+1,#文字位置(&範囲,"m")-1)
  置換 [単位]=#部分列(&範囲,#文字位置(&範囲,"m"))

もう一度ご教示いただければ幸甚です。
8584 Re:#文字位置 についてご教示ください 幅田 2000/11/14-12:21
記事番号8583へのコメント
永井  博さん
こんにちは

>当方の一括処理では,「0〜10m」というデータを,下限値・上限値・単位の3つのデータに区分する
>ために下記のように利用しています。
>  &範囲="0〜10m"
>  置換 [下限値]=#部分列(&範囲,1,#文字位置(&範囲,"〜")-1)
>  置換 [上限値]=#部分列(&範囲,#文字位置(&範囲,"〜")+1,#文字位置(&範囲,"m")-1)
>  置換 [単位]=#部分列(&範囲,#文字位置(&範囲,"m"))
>
>もう一度ご教示いただければ幸甚です。

&範囲に 0〜10m というデータが代入されているわけですね。
それはもちろん文字列型でしょうね。
そして、[下限値][上限値][単位]もすべて文字列型になっていますか?
[下限値]や[上限値]が数値型になっている場合は文字列型にしてください。

またどうしても[下限値]や[上限値]を数値型にしたい場合は

置換 [下限値]=#数値(#部分列(&範囲,1,#文字位置(&範囲,"〜")-1))
置換 [上限値]=#数値(#部分列(&範囲,#文字位置(&範囲,"〜")+1,#文字位置(&範囲,"m")-1))

という風に#数値で囲んでやる必要があります。
8587 Re:#文字位置 についてご教示ください みすず 2000/11/14-12:45
記事番号8579へのコメント
>#文字位置("0〜10m","〜") を一括処理の中で利用したところ
>「KU1083:データの形式に誤りがあります」のエラーになってしまいます。
>対処方法がありましたらご教示ください。

関数のみ記述してもエラーになります。
変数に代入するとかの処理が必要だとおもいます。

&A=#文字位置("0〜10m","〜") 

など

8592 Re:#文字位置 についてご教示ください 永井  博 2000/11/14-16:13
記事番号8584へのコメント
永井です。 幅田さんご指導有難うございました。

ご指摘により,見なおしをしましたところ,数値型の項目がありました。
修正後正常に動作しました。

有難うございました。

戻る