Excel VBA質問箱 IV

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

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


4936 / 13646 ツリー ←次へ | 前へ→

【53472】自作関数について 08/1/15(火) 20:54 質問[未読]
【53474】Re:自作関数について neptune 08/1/15(火) 22:53 回答[未読]
【53481】Re:自作関数について Jaka 08/1/16(水) 13:35 発言[未読]

【53472】自作関数について
質問    - 08/1/15(火) 20:54 -

引用なし
パスワード
   自作関数を配置したブックをテンプレートとするため、
とあるセルに
=if(a1="","",自作関数(a1))
のようにいれました。

a1にデータがあれば問題ないのですが、ない時は
再度開く時にフリーズしてしまいます。

これを回避するには自作関数になにか定型的な記述が
必要でしょうか?
似たような経験をお持ちの方、よろしくお願いいたします。

【53474】Re:自作関数について
回答  neptune  - 08/1/15(火) 22:53 -

引用なし
パスワード
   ▼町 さん:
>自作関数を配置したブックをテンプレートとするため、
>とあるセルに
>=if(a1="","",自作関数(a1))
>のようにいれました。
>
>a1にデータがあれば問題ないのですが、ない時は
>再度開く時にフリーズしてしまいます。
>
>これを回避するには自作関数になにか定型的な記述が
>必要でしょうか?
>似たような経験をお持ちの方、よろしくお願いいたします。
経験は無いのですが、普通、引数を持つプロシージャでは
function jisaku(a as range) as ???
if isempty(a) then
  jisaku=""
 exit function
end if
のような感じで、引数のデータの正当性のチェックを行います。

自作関数をUPした方がより的確なアドバイスが皆さんから頂けますよ。

【53481】Re:自作関数について
発言  Jaka  - 08/1/16(水) 13:35 -

引用なし
パスワード
   Function 自作関数(seru As Range) As Variant
If IsEmpty(seru.Value) Then
  自作関数 = CVErr(xlErrNA)
End If
End Function

とか。

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