advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 228 for エラー値 #N/A (0.017 sec.)
エラー値 (861), #n/a (1385)
[[20190507235008]]
#score: 10842
@digest: aa055a0e619d59f03a73b8433d79dc97
@id: 79469
@mdate: 2019-05-09T11:09:38Z
@size: 2885
@type: text/plain
#keywords: xlerrna (13347), cverr (11722), 用歴 (7005), 段構 (3858), 合if (2434), ー値 (2209), ャ内 (1679), ル使 (1470), エラ (828), ラー (772), cells (762), い理 (744), 2019 (722), iserror (722), isna (689), 水) (604), 理由 (543), 行錯 (516), value (513), 錯誤 (502), ー定 (472), 区別 (466), 試行 (444), ジャ (442), 値で (440), のエ (404), トッ (390), 記述 (351), 何故 (343), ロシ (341), サイ (316), 定義 (293)
『条件式で、数字の0または#N/Aエラー値でなければ、と記述したい』(たろう)
例えば For i = 1 To 10 If Cells(i, 2).Value <> 0 Or CVErr(xlErrNA) Then Cells(I, 4).Value = Cells(i, 2).Value End If Next としたり、 Or の後を IsError(I, 2) Then としたり、ネットの説明を参考に試行錯誤しましたが、 エラー値のところにくると、型が一致しませんという表示が出てマクロがストップしてしまいます。 どのように記述すればいいのでしょうか。 < 使用 Excel:Excel2010、使用 OS:Windows10 > ---- 一例です。 cells(i,2).text <> "#N/A" (sheet無限増殖) 2019/05/08(水) 00:46 ---- 確かにうまくいきませんね・・・ とりあえず、2段構えにしたらできましたが、出来ない理由を説明してくれと言われると私には無理っぽい・・ Sub たとえば() Dim i As Long For i = 1 To 10 If IsError(Cells(i, 2).Value) Then 'エラー値であって、#N/Aでない場合 If Cells(i, 2).Value <> CVErr(xlErrNA) Then Cells(i, 4).Value = Cells(i, 2).Value End If Else 'エラー値でなくて、数値であって、0でない場合 If IsNumeric(Cells(i, 2).Value) And Cells(i, 2).Value <> 0 Then Cells(i, 4).Value = Cells(i, 2).Value End If End If Next End Sub (もこな2) 2019/05/08(水) 00:53 ---- Not Application.IsNA(Range("B1").Value) orの使い方が間違ってる、andで (BJ) 2019/05/08(水) 03:50 ---- ご回答ありがとうございました。 いろいろ試してみます。 (たろう) 2019/05/08(水) 18:46 ---- >出来ない理由 https://docs.microsoft.com/ja-jp/office/vba/language/reference/user-interface-help/cverr-function ここには 「VarType が vbError (10) である Variant」を返し、 「Error の暗黙的な変換はできないことに注意」しろってあります。 Error型とそれ以外の型はそのままでは比較は出来ないってことみたいですね。 (2u) 2019/05/08(水) 19:14 ---- たろうさん、出てこないなぁ。 私としては以下のことが知りたい。 1.この問題を解決するために、CVErr(xlErrNA)を使っていますが、 どこかのサイトで、そんな時はその関数を使ってチェックするといい、などと書いてあったんでしょうか? もし、そうならどこのサイトか教えてください(覚えていなければ結構です) CVErrのヘルプを見ると、とあって、ユーザー定義のエラーを作るのがメジャーな使い方と言う気がします。 ↓ 「CVErr 関数を使用して、作成したプロシージャ内でユーザー定義のエラーを作成できます。」 普通は、BJさんの Application.IsNA() で対応することが多い様な気がするんですがねぇ。。 2.何故、#N/Aエラーだけ問題にするんですか? 私の長いエクセル使用歴で、そんな区別をしたのは1回あるか無いかです。 通常は、エラーかどうかだけで済ましています。 本当に別のエラー(例えば#DIV/0!)は、OKにしたいと言う趣旨なんですか? (半平太) 2019/05/09(木) 19:41 ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/201905/20190507235008.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97021 documents and 608149 words.

訪問者:カウンタValid HTML 4.01 Transitional