プロが教える店舗&オフィスのセキュリティ対策術

VBAで出てくる「メソッド」を日本語に置き換えると
「動詞」と言う意味でしょうか?

A 回答 (4件)

こんにちは



>日本語に置き換えると
>「動詞」

うーん、「動詞(Verb)」。それは、違う言語の話ですね。
きっと、どこかで調べたのでしょうね。時々、そういう方はいらっしゃるようですが、そういう概念の世界から入ると、半永久的に覚えられないと思います。

オブジェクト指向の話を持ち出すと、話がややこしくなってしまいますから、オブジェクト指向については当面忘れていたほうがよいですね。VBAでは、完全なオブジェクト指向にはならないはずです。

VBAプログラミングにおいて、「メソッド」とは、何かを命令して、その結果を得るとこですから、一般に私たちが作る、Sub プロシージャと機能としては変わらないです。それをクラス(お仕着--型)から作るから、呼び名をメソッドに変わるのです。

プロパティは、オブジェクトの特徴を表すものだから、それを使う側からみると、たくさんある設定値です。これは、作る側からすると、なるほどと分かるのです。

もっと具体的な話を持ってきたほうがよいと思います。
例えば、Endプロパティというのは、なぜ、プロパティなのだろうか、動きを伴っているのに?
SpecialCells メソッドは、なぜ、メソッドなのだろうか?

そうやって考えると、言葉の定義というものはあてにならないものだとお分かりになると思います。結論的な言い方にすると、作る側がそう決めたからに他ならないのではないか、と考えます。


まあ、私の回答に異論はあってもいいけれども、私は、自分自身の体験で、メソッドを解釈して、何年も過ごしています。もちろん、手元には、VB/VBA用語辞典で確認しています。

メソッドとは、オブジェクトの手順では、さっぱり理解できません。クラスでメソッドを作る時にやっていることは、Subプロシージャで作るのと何ら変わりはないから、上記のように考えました。厳密には、メソッドはオブジェクトの中で存在するものですから、ステージが違うのは言うまでもありません。しかし、そう考えると、メソッドというもの印象がはっきりするのです。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2012/11/19 22:25

smalltalk80の頃から、というから30年以上、ウープスがわからない。

オブジェクトがわからない。

No.2さんの回答のURLを1つ1つ読んでいくと面白いし、「だんだん、わからなくなる」がいい。
その、IT用語の:

例えば、「テレビ」をオブジェクトとすれば、「画面を映す」「チャンネルを変える」といった操作がメソッドとなる。テレビのユーザはその内部の挙動の詳細を知らなくても、リモコンからメッセージを送って希望するメソッドを呼び出すだけで、テレビを操作することができる。

自分の理解では、最高のオブジェクトは人間で、その人間に「命令」をすると、その通りにする。(しない場合もある)

よって、回答は「命令」。

                              鎌倉 曽野蜩
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2012/11/19 22:25

「メソッド」


一般的には体系的な方法・方式・技法と言った意味で使われています。
http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%BD% …

エクセルのVBAの場合
http://www.excellenceweb.net/vba/class/class_met …
http://excelvba.pc-users.net/fol1/1_3.html
ちょっと理解できました。
オブジェクト(Workbook、Worksheet、Cell)で行う動作、手続きをメソッドと言うようですね。

IT用語では
http://e-words.jp/w/E383A1E382BDE38383E38389.html
だんだん解らなくなってきましたが、さらに
http://ja.wikipedia.org/wiki/%E3%83%A1%E3%82%BD% …

聞いたことたある言葉が出てきました サブルーチン
http://ja.wikipedia.org/wiki/%E3%82%B5%E3%83%96% …
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2012/11/19 22:25

VBAでも「メソッド」というのは、オブジェクト指向言語の用語でしょう。



「手続き」という意味になるようです。

参考URL:http://e-words.jp/w/E383A1E382BDE38383E38389.html
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2012/11/19 22:25

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!