- ベストアンサー
IF文による瞬停の解決方法とは?
- MORISEIKIのNV5000(制御盤FUNUC MSX-501)にて、IF文による瞬停現象が起こります。
- 同プログラムで三菱(MELDAS)の制御盤MCではスムーズに動作するのに対して、FUNUCでは厳しいようです。
- プログラムの記憶容量が128KBのため、コンパクトなIF文を作成したいです。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
その他の回答 (3)
関連するQ&A
- 長いIF文を短くしたい
よろしくお願いします いつもgooのみなさんに大変お世話になっております マクロは2カ月ほど前から勉強しています お陰様で、私のマクロも日々進歩できています エクセルのバージョンは2013です 質問内容 長いIF文を短くしたい IF 条件1 and 条件2 and 条件3 and 条件4 and 条件5 Then 処理 End If このようにIF文が長いために、マクロ編集画面が見にくくなっています Select Case を使わずに短くする方法はないでしょうか?
- ベストアンサー
- Excel(エクセル)
- if文がうまくできません;;
こんにちわ。 当方、linux初心者です。 今if文を作っているのですが、どうしてもうまくいきません。 ●lsで出力した結果が何行出力されたかによって回答が変わるシェルを作成してください。(10以上と9~3と2以下の3種類) という例題を解答中ですが、下記のとおり作ったのですが 何かアドバイスは頂けませんか? お願い致します。 #!/bin/bash ls -l > case.txt P=`cat case.txt | wc -l` if $P -ge 10 then echo '10以上' elif $P -ge 3 ; then echo '3以上' elif $P -le 2 ; then echo '2以下' fi
- ベストアンサー
- Linux系OS
- fortran if文
fortranのif文で、以下の様に場合わけしてプログラムしたのですが、 このようなエラー文が出ます。どう対処したらいいのか教えて下さい。 Error: An unterminated block exists. プログラム↓ if(-0.5d0.LE.theta.LE.0.0d0) then eta=2 if(0.0d0.LT.theta.LT.0.5d0) then eta=5 if(0.5.LE.theta.LE.1.0d0) then eta=3 場合わけの範囲指定の仕方が不味いのではないかと思っていますが、 どうしていいものかわからず・・ 皆様のお力を貸して下さい。
- ベストアンサー
- その他(プログラミング・開発)
- If文について
よろしくお願いします。 Excelのマクロで If文を使おうとしています。 ブックAのシート1に会員No.リストがあり、 ブックBに会員Noをシート番号にしたものがあります。 そこで、会員Noに等しいシートを見つけようと、下記のようにIf文を使いました。 しかし、等しいシート番号があるのに 一致した と出ません。 シートの最後まで進んで 不一致 が出ます。 どこが悪いのでしょうか。ご指導お願いします。 For I = 1 To ActiveWorkbook.Worksheets.Count 'ワークシートの数だけ繰り返す MsgBox 会員No & Worksheets(I).Name If 会員No = Worksheets(I).Name Then MsgBox "一致した" End If Next MsgBox "不一致" 質問の補足ですが、マクロはブックAにあります。 ブックAから会員Noを読み取り、ブックBをアクティブにしてから、If文に入っています。またIf文の前のMsgBox 会員No & Worksheets(I).Name で番号が一致する時があることも確認しています。
- ベストアンサー
- Visual Basic
- If文の条件文の書き方
お世話になります。 Excelでマクロを作成しております。 内容: あるセルに、X<=300 というような条件を入れておきます。 ある値、たとえば、500 が来たときに、Xに代入して、 500<=300 という条件式を作り、それが、正しいか、正しくないか の結果を求めたいと思っています。 このとき、if文の条件文は、値によって、変わらなくてはいけないので、 文字列の置き換え等をして、変数として条件文を作ると、「型が違います」 のエラーになります。 どのように条件文を作ればいいでしょうか?? hani = Cells(1,1).value 'セル1,1に、X<=300 が書かれています。 exp = Replace(hani, "X", 500) '"X"を500と置き換えます。 If exp Then Check = 0 Else Check = 1 End If よろしくお願いします。
- ベストアンサー
- Visual Basic
- 再質問 長いIF文を短くしたい
お世話になっております 先日1/24に、条件を示さずに「長いIF文を短くしたい」という質問をしてしまいました こちらの手抜きをお詫びします 前回keithinさんにアドバイスいただいた方法で書き直しましたので これをさらに簡単に書く方法があれば教えてください 以下は、Private Sub Worksheet_Change(ByVal Target As Range)内のマクロです If Target.Row >= 15 And Target.Row <= 100 And Target.Column = 9 Then If Range("I" & Target.Row).Value < Range("J" & Target.Row).Value Then If Range("G" & Target.Row).Value >= 1 Then If Range("I" & Target.Row).Value >= Range("G" & Target.Row).Value Then If Range("I" & Target.Row).Value Mod Range("G" & Target.Row).Value = 0 Then 処理 End If End If End If End If End If
- 締切済み
- Excel(エクセル)
- vb.netでのif文について
vb.netでエクセルを操作する プログラムを作ってて、 Dim xlrange As Excel.Range Dim xlcells As Excel.Range xlrange=xlcells(1,1) if xlrange.value<>"*合計*" then xlrange.value="" end if というプログラムを考えたのですが、 うまくいきません。 if文の条件にxlrange.valueは使えるのでしょうか?
- ベストアンサー
- Visual Basic
- if文がbegin - endな訳は?
if 条件 > 0 then begin 条件あり end else begin それ以外。 end; Delphiでは、こうなるのですがなぜ{}を使わないのでしょうか? {}はコメントになるけど、//でも/* */ でもいいじゃないですか。 それに比べて、begin - end って面倒じゃないですか? 何かの本でif文が多いのは汚いプログラムだ、と読んだのですが、当時はPerl,PHPしか知らなかったので、それほど汚くないじゃん。と思ったのですが、Delphiを使ってみると、やっぱりif文が汚く感じます。 もちろん、コンパイルするので、書き方は開発者の自由なのは分かりますが、{}ではいけない明確な理由があるんでしょうか? 豆知識を持っている方、プログラム経験上分かった方、よろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
お礼
ありがとうございます。 やはりG08は意味がないのですね、、 弊社約20台のMCがあり、森・オークマで制御盤はFUNUC,MELDAS,OSPとバラバラで(オークマFUNUCもあり)20年戦士も数台あり、今回加工内容が統一された マクロを作成すべくこのような内容になってしまいました。。 (事前に説明がなくすいません) 変数置き換えは#33まで使い切っているので、#100~に踏み込んだ方が よさそうですね。 IF文の排他的アドバイス活用させていただきます。 最終的に[]で行を囲わないとアラームがでたり、論理演算が使用できない機種もあり、そもそも統一事態が厳しいのかもしれませんね。 N123は近いとこに置いてあるのですが、WHILEに変えてみます。 しかし同世代のMELDASはかなりスムーズなのに、、、 解りやすい解説有難うございます。 予備知識として勉強になりました。