• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:お助け下さい。)

VBA初心者がCOBOLの課題で困っています。お助け下さい。

このQ&Aのポイント
  • VBAの初心者がCOBOLの課題に困っています。解決策を教えてください。
  • 半年のVBA経験しかない初心者がCOBOLの課題で困っています。助けてください。
  • COBOLの課題に取り組む初心者が支援を求めています。お助けください。

質問者が選んだベストアンサー

  • ベストアンサー
  • RURUFOU
  • ベストアンサー率55% (5/9)
回答No.3

古代のCOBOLERなので Open cobolの仕様は分かりませんが ロジックとコーディングでお手伝いを。 (1):10回ループしている部分を   UNTILで無限にループさせて、   最初の項番に戻った時に値を入力せずに   Enterでフラグを立たせて終了。 10回ループは、PERFORM 1O TIMES なので PERFORM UNTIL 終了条件 の形にします。 項番の入力で終了とするので PERFORM UNITIL KOUBAN = Enter入力 の形にします。 Enterのみ入力で何が入るか分からないので NULLになると想定して PERFORM UNTIL KOUBAN = '' にします。 で PERFORM UNTIL KOUBAN = '' DISPLAY "項番" WITH NO ADVANCING ACCEPT KOUBAN その他の項目入力 DISPLAY "部屋番号" WITH NO ADVANCING ACCEPT TATEMONO WRITE SYAIN-RC END-WRITE END-PERFORM. のままだと、項番でEnter入力後、他の項目も入力して 書き込みを行ってから終了条件を判定するので PERFORMの前に項番の入力を行います。 DISPLAY "項番" WITH NO ADVANCING ACCEPT KOUBAN PERFORM UNTIL KOUBAN = '' その他の項目入力 DISPLAY "部屋番号" WITH NO ADVANCING ACCEPT TATEMONO WRITE SYAIN-RC END-WRITE END-PERFORM. 今度は、項番の入力がループの外にあるので 2回目の項番の入力が行われません。 なので項番の入力をもう一つ書き足して 入力直後に終了判定を行う為に ループの最後に書き足します。 KAKIKOMI. DISPLAY "項番" WITH NO ADVANCING ACCEPT KOUBAN PERFORM UNTIL KOUBAN = '' DISPLAY "氏名" WITH NO ADVANCING ACCEPT SIMEI DISPLAY "郵便番号" WITH NO ADVANCING ACCEPT YUUBIN DISPLAY "県名" WITH NO ADVANCING ACCEPT KEN DISPLAY "市町村" WITH NO ADVANCING ACCEPT SIKU DISPLAY "部屋番号" WITH NO ADVANCING ACCEPT TATEMONO WRITE SYAIN-RC END-WRITE DISPLAY "項番" WITH NO ADVANCING ACCEPT KOUBAN END-PERFORM. (2):項番や氏名などの入力で   間違って入力した際に、戻って入力し直す。 これに関しては、どこに戻るのか、いつ戻るのか、項目はどうやって指定するのかで 書き方も変わってきますし、ここからだと大幅な書き換えになりますので 話しは「仕様を確認」してから、になります。 後、コーディングで 01 SYAIN=RAC に対して WRITE SYAIN-RC となっているので 01 SYAIN-RC WRITE SYAIN-RC にするか 01 SYAIN=RAC WRITE SYAIN=RAC にしてください。 私が手伝える所は、こんなところです。 課題がんばって下さい。

kenzo9567
質問者

お礼

ありがとうございました! 期限に間に合わなかったですが、勉強になりました。 新たに似たような課題が出たので、役立てたいと思います!

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • zwi
  • ベストアンサー率56% (730/1282)
回答No.2

がんばったけど出来なかったと言うのも一つの結果報告です。 人の手を借りて取り繕って完成させても、それをは実力を偽ることになるので後々で困るのはご本人ですよ。

すると、全ての回答が全文表示されます。
回答No.1

どこで10回ループしているかわかる? >項番や氏名などの入力で間違って入力した際に 何を持って間違いと判別するの? >こいった所で聞くのは、筋違いだと思いますがよろしくお願いします。 質問サイトだから筋は通ってるけど、今後も同じようなことがあったら質問サイトに頼るの? この業界でやっていこうと思うなら、まずは調べまくりなさい。

すると、全ての回答が全文表示されます。

関連するQ&A