Excel VBA質問箱 IV

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

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


36654 / 76732 ←次へ | 前へ→

【45256】Re:セルへの書き込み方法
発言  ichinose  - 06/12/16(土) 19:25 -

引用なし
パスワード
   ▼かみちゃん さん:
こんばんは。

>無理ではないと私は思います。
>ご提示のコードでは、単にユーザー定義関数の使い方を誤っていると思われるだけです。
>その前に、ユーザー定義関数を使う必要もないのでは?とも思います。

恵さんのユーザー定義関数での動作には・・・、

例えば、標準モジュールに

'==============================
Sub main()
  Range("a1").Value = test()
End Sub
'==============================
Function test() As Variant
  test = "aaa"
  Range("b1").Value = " bbb"
End Function

というコードでmainを実行した時には、
セルA1に値が設定される(つまり、testに値が返る本来の関数の出力値)と
関数内で別のセルB1に値を出力しています。
つまりtestという関数は、二つのデータを出力していますし、
それが可能になっていますよね??
(もっとも、関数としては、出来のよい関数でありませんが)
この現象が下地にあるのだと思うのです。

よって、同じ関数testをワークシート関数として、
セルA1に「=test()]
と指定した時にセルB1に値が設定されないことを
疑問に思っていたのだと推測します。
(私も最初の頃この現象が不思議でした)。

勿論、代替案はあると思います
(イベントを使用する方法が一般的だと思いますが

0 hits

【45244】セルへの書き込み方法 06/12/16(土) 16:43 質問
【45245】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 16:58 発言
【45247】Re:セルへの書き込み方法 06/12/16(土) 17:13 質問
【45248】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 17:23 発言
【45249】Re:セルへの書き込み方法 06/12/16(土) 18:35 質問
【45251】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 18:42 発言
【45253】Re:セルへの書き込み方法 06/12/16(土) 19:04 質問
【45254】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 19:14 発言
【45257】Re:セルへの書き込み方法 06/12/16(土) 19:27 質問
【45260】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 20:02 発言
【45259】Re:セルへの書き込み方法 06/12/16(土) 19:50 発言
【45261】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 20:07 発言
【45265】Re:セルへの書き込み方法 Kein 06/12/16(土) 22:00 回答
【45266】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 22:08 発言
【45246】Re:セルへの書き込み方法 ichinose 06/12/16(土) 17:12 発言
【45250】Re:セルへの書き込み方法 06/12/16(土) 18:40 お礼
【45252】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 18:44 発言
【45255】Re:セルへの書き込み方法 06/12/16(土) 19:19 質問
【45256】Re:セルへの書き込み方法 ichinose 06/12/16(土) 19:25 発言
【45258】Re:セルへの書き込み方法 06/12/16(土) 19:43 質問
【45263】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 20:11 発言
【45267】Re:セルへの書き込み方法 ichinose 06/12/17(日) 0:16 発言
【45262】Re:セルへの書き込み方法 かみちゃん 06/12/16(土) 20:09 発言

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