[[20200501223307]] 『VBA IF関数のご教授ください』(hn) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VBA IF関数のご教授ください』(hn)

VBA IF関数についてご教授ください。

xには2列目〜10列までにそれぞれ、目標値が入力されています。
目標値より3行目の結果が大きいか小さいかで表示される条件を作成しました。
一回だけマクロの実行を押しますと期待通りの結果になります。
(結果が返された時点で文字列になると考えています)

もう一度マクロの実行を押しますと必ず、目標数値に関係なく▲の文字が返されます。
ちなみに、最初から3行目の結果を文字列にしておくと、必ず▲の結果が返されます。
例)一回目の結果
目標値0.47 結果0.3 ⇒ 0.3▽
もう一度マクロ釦を押すと
目標値0.47 結果0.3▽ ⇒ 0.3 ▽ ▲になってしまいます。
この場合は以下の条件からしますと空白になって欲しいのですが。
又は一回目の結果で終わりにして、何も更新されないようにしたいのですが。

Sub sann()

Dim x As Long

For x = 2 To 10

If Sheets("集計グラフ").Cells(2, x).Value > Cells(3, x).Value Then
Cells(3, x).Value = Cells(3, x) & " ▽"

ElseIf Sheets("集計グラフ").Cells(2, x).Value < Cells(3, x).Value Then
Cells(3, x).Value = Cells(3, x) & " ▲"

Else
Cells(3, x).Value = ""

End If

Next x

End Sub

< 使用 Excel:Excel2013、使用 OS:Windows10 >


先に、IsNumericで判定してはどうですか

(マナ) 2020/05/01(金) 23:01


さっそく有難うございました。

ご教授頂いた通り、IsNumericで判定したら出来ました。
最近VBA始めたばかりで分からなく、大変勉強になりました。
(hn) 2020/05/01(金) 23:30


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.