Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


7877 / 13644 ツリー ←次へ | 前へ→

【36093】セルに数字が入力されているときにのみ実行したい K.K. 06/3/20(月) 17:38 質問[未読]
【36095】Re:セルに数字が入力されているときにのみ... Blue 06/3/20(月) 17:46 回答[未読]
【36336】Re:セルに数字が入力されているときにのみ... K.K. 06/3/29(水) 10:50 お礼[未読]
【36338】Re:セルに数字が入力されているときにのみ... Jaka 06/3/29(水) 11:11 発言[未読]

【36093】セルに数字が入力されているときにのみ実...
質問  K.K.  - 06/3/20(月) 17:38 -

引用なし
パスワード
   Fund.xlsのPerformanceシートの N列に数字が入力されているときにのみ実行されるコードを書きたいと思っています。
【32971】を参考に以下のコードを書いたのですが、N3セルが空白のときにも実行されてしまいます。

Dim i As Integer
For i = 1 To 1

If IsNumeric(Workbooks("Fund.xls").Worksheets("Performance").Range("N" & 2 + i)) Or Trim(Workbooks("Fund.xls").Worksheets("Performance").Range("N" & 2 + i).Value) = "" Then
以下略

【36095】Re:セルに数字が入力されているときにの...
回答  Blue  - 06/3/20(月) 17:46 -

引用なし
パスワード
   >If IsNumeric(Workbooks("Fund.xls").Worksheets("Performance").Range("N" & 2 + i)) Or Trim(Workbooks("Fund.xls").Worksheets("Performance").Range("N" & 2 + i).Value) = "" Then

If IsNumeric(なんか値) Or Trim(なんか値) = "" Then

という条件式をもう一度良く見てください。

数字である または トリムした結果が空文字列 であるとき

という風になっています。


> N列に数字が入力されているときにのみ実行されるコードを書きたいと思っています。
とするには

If Trim(なんか値) <> "" And IsNumeric(なんか値) Then

とすることで、

トリムした結果が空文字でない かつ 数字 であるとき

という条件になります。

【36336】Re:セルに数字が入力されているときにの...
お礼  K.K.  - 06/3/29(水) 10:50 -

引用なし
パスワード
   Blueさん
できました。ありがとうございました。

【36338】Re:セルに数字が入力されているときにの...
発言  Jaka  - 06/3/29(水) 11:11 -

引用なし
パスワード
   正確に判断したいなら、ワークシート関数のIsNumberを使ってください。

MsgBox Application.IsNumber(True)

MsgBox IsNumeric(False)
MsgBox IsNumeric(True)
MsgBox IsNumeric("0E0")

7877 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free