質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

Q&A

2回答

1742閲覧

次の行にinputboxで入力した数字がある時のみ改行をしたいです。

syousihnnmono

総合スコア7

VBScript

VBScript(Visual Basic Scripting Edition)はMicrosftが開発したスクリプト言語であり、Visual Basicのサブセットです。

0グッド

0クリップ

投稿2018/02/25 11:57

編集2022/01/12 10:55

前提・実現したいこと

試したことに書いてあるコードを実行した結果なのですが

* 三角形 * 底辺;10 高さ;10 面積;50 * 円 * 半径;10 面積;62.8 円周;100 * 台形 * 上辺;10 底辺;10 高さ;10 面積;5050

とテキストに書き込めたのですが、
面積;50と* 円 の間に1行改行。
円周;100と
台形 *の間にも1行改行したいと思っています。

発生している問題

「次の行に入力した数字が打ち込まれている状態でのみ改行をしたい」のですが、 そのコードがわかりません。 writeline""を使ったのですが、次の行に何も入力されてない状態でも改行してしまいます。

該当のソースコード

ソースコード

試したこと

実行してみたコード

option explicit dim fso dim a dim i1 dim j1 dim k1 dim i2 dim j2 dim k2 dim i3 dim j3 dim k3 dim l1 set fso = createobject("scripting.filesystemobject") with fso.getfile("書き込むテキストファイルの場所").openastextstream(2) a=msgbox("三角形の数値を入力しますか?",vbyesno) if a = vbyes then i1=inputbox("底辺を入力して下さい") j1=inputbox("高さを入力して下さい") k1=i1*j1/2 .writeline "* 三角形 *" .writeline "底辺;" & i1 .writeline "高さ;" & j1 .writeline "面積;" & k1 end if if a = vbno then end if a=msgbox("円の数値を入力しますか?",vbyesno) if a = vbyes then i2=inputbox("半径を入力して下さい") j2=2*i2*3.14 k2=i2*i2 j2=cdbl(j2) k2=cdbl(k2) .writeline "* 円 *" .writeline "半径;" &i2 .writeline "面積;" &j2 .writeline "円周;" &k2 end if if a = vbno then end if a=msgbox("台形の数値を入力しますか?",vbyesno) if a = vbyes then i3=inputbox("上辺を入力して下さい") j3=inputbox("底辺を入力して下さい") l1=inputbox("高さを入力して下さい") k3=(i3+j3)*l1/2 .writeline "* 台形 *" .writeline "上辺;" &i3 .writeline "底辺;" &j3 .writeline "高さ;" &l1 .writeline "面積;" &k3 end if if a = vbno then end if .close end with set fso = nothing

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

unz.hori

2018/02/25 14:04

コードを書いて実行してうまくいかないのであれば、実行した結果を質問に記述してください。その結果こうしたいけどこうなってしまうのでここを教えてくださいという質問ならわかるんですが...
guest

回答2

0

VBScript

1 .writeline "面積;" & k1 2 .WriteLine ' 追加 3 end if

これで十分だと思いますが、末尾の改行が気になるなら出力内容を変数に保持するといいかもしれません。

VBScript

1Dim txt 2' 略 3 k1=i1*j1/2 4 If txt <> "" Then txt = txt & vbCrLf & vbCrLf ' 追加 5 txt = txt & "* 三角形 *" ' 変更 6' 略 7 .WriteLine txt ' 追加 8 .close

投稿2018/02/26 01:55

x_x

総合スコア13749

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

writeline""を使ったのですが、次の行に何も入力されてない状態でも改行してしまいます。

どこで使ったのかが明記されていないですが、* 円 *および* 台形 *を出力する直前で実行すればいいのではないでしょうか。

VBA

1k2=cdbl(k2) 2 3.writeline "" ' ←追加 4.writeline "* 円 *" 5.writeline "半径;" &i2 6 7~省略~ 8 9k3=(i3+j3)*l1/2 10 11.writeline "" ' ←追加 12.writeline "* 台形 *" 13.writeline "上辺;" &i3

投稿2018/02/26 01:47

ttyp03

総合スコア16996

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問