Re: 標準Module の呼び出し方法
和久井です.
なんか,とても恥ずかしいです.すみませんでした.
at Sat, 8 Nov 2003 12:31:07 +0900,
<kounoike@mbh.nifty.com> wrote:
Message-ID: <boho8p$pvr$1@news511.nifty.com>
>ところで、Module への Declare Function 宣言って何を意味しているのだろう
>?。
>Declare Functionは普通DLLの呼び出し時に使用すると思うけど、DLLな
>ら元記
>事に書いてるようなコード部分を書き写すなんてことはできないと思うし。
>
"Naoto Zushi"さん,
"Y.Sone"さん,
kounoike@mbh.nifty.comさん,
すみません.
わたくしがかなりお馬鹿な思い違いをしていたみたいです.
ズッと以前に,QuickBasic 使ったことあって,
プログラムの先頭部分で,Declare Function とか,
Declare Subって,自動生成や,宣言していた記憶があって,
"Naoto Zushi" <news-admin@muzik.gr.jp> wrote:
Message-ID: <bofnhi$9i4$1@cala.muzik.gr.jp>
>
> 標準Moduleの所定関数がpublic宣言されていますか?
>
とか,ご指摘のように,関数や変数のスコープをかなり
意識してちゃんと宣言しないと動いてくれないの?とか
思ったり.
で,宣言文書いてもエラー表示になるし...
作った関数に適宜記述すればよいということで,
先頭部分に記述宣言する必要はないのですね.
次のような簡単なサンプルを作って,確認してみたら,
特に宣言しなくても動いてくれました.
恥ずかしい限りです.すみませんでした.
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
UserForm部
Option Explicit
Const OK As Integer = -1
Const NG As Integer = 0
Private Sub CommandButton1_Click()
Dim i As Integer
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
MsgBox .List(i)
End If
Next i
End With
End Sub
Private Sub CommandButton2_Click()
Dim a As Integer
a = 1
If OK = testcall("てすと") Then
Stop
Else
Stop
End If
''''call testcall("てすと")
''''If a = testcall("てすと") Then
'''' Stop
''''Else
'''' Stop
''''End If
End Sub
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
標準Module部
Option Explicit
Function testcall(dat As String) As Integer
MsgBox dat
testcall = -1
End Function
>単に、Function名を書くだけで、普通は動くと思いますが。関数にprivate宣言
>さえ
>していなければですが。
>
記述はしてませんでしたが,気づいていませんでした.
記述がないと,defaultでPublicが暗黙の宣言になっていると
いうことでしょうか.
実は,上に書いたconst宣言なども,
Publicって宣言が *したくって* 記述追記すると,
エラー表示になってしまうことも,悩んでいました...
みなさんごめんなさい.そしてありがとうございます.
-- Thanks in advance...
和久井♪和希 mailto:wakuikazuki@mail.goo.ne.jp
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735