『VBAとマクロの定義について』(おいぼれ弥太郎) 初歩的な質問ですんまへん。 わたしゃ今までVBAもマクロも同じレベルであって、ただ単に表現方法が違うだけや と思うとりましたが最近つとに差違を感じるようになりました。どっちがどうっちゅう 事は分かりまへんのやけど...。例えばセルポインターを或るセルに手動でセットする 様な、つまり人の手を借りなければ正常に作動しないのをマクロと呼ぶのか、はたまた 逆なのか。ゲスの勘ぐりから申せばVBアプリケーションちゅうたいそうな看板を掲げ とる方が人手を借りずに作動するベキやと思いまんねんけど、ちゃいまっしゃろか?  賢明な皆さんにとっては「なんやそんなこと分からんのかぇ!」とか「ほんなんどっ っちでもええやんか!」と映りまっしゃろが、ほれ、皆さんご存じの通り私は完全主義 者なモンですさかい、気ィになって気ィになってしょうおまへんねん。  なにとぞ、平易な表現で納得でけるご指導を賜りたく存じます。       (おいぼれ弥太郎) ---- 難し過ぎて判りまへんがな!これはKazuさん以降、大御所の登場でしか解決出来ないと 思いますわねん!(ヒロ) ---- 過去にもマクロとはについて色々議論しています。  ↓を参考にしてみてください。 (kazu) [[20030302041232]] 『マクロを組むとはどういう意味』(薬師寺) 歴史的に Excel5.0 以前のマクロが正統派のマクロです。VBAとは文法も違って これを使えるのは古参のほんの一部の人です。 実際の↓イメージはこんな感じです。 ============================================================= HENKAN SHEET=GET.WINDOW(1) =ECHO(FALSE) =SELECT("R1C1") START=ACTIVE.CELL() =SELECT("R16000C1") =SELECT.END(3) END=ACTIVE.CELL() =SELECT(START:END) ANS_AREA=SELECTION() =FOR.CELL("ANS_CELL",ANS_AREA,TRUE) =SELECT(ANS_CELL) ANS_TYPE=GET.CELL(5,OFFSET(ANS_CELL,0,1)) =IF(ANS_TYPE=TRUE) =BORDER(,,,,1,,,,,,5) =ELSE.IF(ANS_TYPE=FALSE) =PATTERNS(1,0,3,TRUE) =ELSE.IF(ANS_TYPE=0) =FONT.PROPERTIES(,,,,,,,,3) =END.IF() =NEXT() =RETURN() http://excelyou.hp.infoseek.co.jp/qm6.htm から 1994/03 Excel5.0からマクロの代わりとして、VBAが搭載されました。 その後AccessやWordにもVBAが自動化のためのツールとして搭載されています。 現時点ではVBAとマクロは同じ事をさしていると思います。 [ツール(T)]メニュー→[マクロ]→[マクロ]で実行するものが『マクロ』と呼ばれ Sub Test() ... End Sub の形式で書かれます。 もう一つ『ユーザー関数』と呼ばれるものがあり Function test() ... End Function の形式で書きます。こちらは基本的に =Test() のように書いてワークシートから 呼び出します。これはセルに値を返すのが任務なので、式が書かれたセルに値を返す 以上のことはできません。 きちんとした答えになっていませんが。 (kazu) ---- こんばんは http://www.moug.net/relax/brunch/love_vba/episode3.htm わたしもあまり詳しくはないし、以前のことはさっぱりわかりませんが最近はこちらでも書かれているように、 マクロ = VBAで書かれたプログラム と思っていればいいようにおもいます。 (りな) ---- -かつて当ページでシニア氏が紹介された、アスキーデジタル用語辞典 http://yougo.ascii24.com/ -にも「マクロ」で、記載がありますよ。 -ぼくの印象では、マクロは簡易言語です。従って、マクロを書いて、「プログラムを書いてくれたんですか?」「ええ、まア…」と答えるのは良心が痛みます。昔のバッチファイル、メーンフレームのエグゼックなど同類ではないですか。もっとも、IBM のエグゼックで REX というのがありまして、これなどはほとんど言語でした。変数に型がないのをはじめて知って驚きました。 -エクセルやワードではマクロとして VB という言語(のサブセット)を採用しました。それで話がややこしくなったのではありませんか。最近アクセスを知りませんが、もとアクセスでは、ちゃんとしたマクロがちゃんとあって、さらに、別に、VBA も使えました。マクロだけでも全部仕事ができました。この環境ではマクロと VBA の違いがはっきりしてました。マルチプランや 123 のマクロも懐かしい! -現在のエクセルやワードでは、マクロと VBA は事実上同義語ですね。しかし今でも、マクロを書いたのを、「プログラムを書きました」というのは良心が痛んで辛い。javascript や perl も「プログラム書きました」が、ちょっと辛い。勝手に懐古譚にふけってすみません。(通りすがりの者) ---- 遅うなってすんまへん。今日は出かけてまして返信遅れました。深謝。 やっぱり以前からこんな議論はなされとったんですなぁ、意を強うしましたわ。 kazuさんが仰有るようにVBAがいかにエバっていようと「ツール」「マクロ」「実行」 で初めて動きまんのやから、VBAが格上っちゅうことはありえまへんわなぁ。納得。 本格的なマクロッちゅうんは、なんやしらん限りなくプログラムに近い書き方みたい で、少々の知識では寄せ付けんような威厳がおますわなぁ。つき合いせんで良かった。  りなさんおおきに あのHP見してもらいましたけど、初心者向けのコメントが導いてくれて最後まで無理 なく行き着きました。私にゃもってこいの手引きになりましたわ、えぇ。 何たって私を解答者側に導いてくれはったんは、他ならぬりなさんアンタですさかいな 責任もって見守ってくれなあきまへんでぇ、ホンマに。  通りすがりの者さん やっぱVBA、マクロはそれぞれ独立しとったみたいでんなぁ。フンフン、大納得。 難しいことはよう分かりまへんねんけど、JABAって、あれでっしゃろ、プログラム言語 で書き込んでいくヤツとちゃいまんのん?ほんなん扱えるって、おタク、なかなかの使 手でんなぁ。ひょっとして本業はプログラマー?  で、私の得た結論は、 >マクロと VBA は事実上同義語ですね これで今日からわだかまり無くマクロとVBAを同列に扱えますわ、皆さんおおきに。  ヒロさん まいどっ! お世話になっております。 本日はまた水先案内人を務めて頂いておおきにおおきに。も1回おおきに。  ところで、一言文句が言いとうおまんのやけどよろしおまっか? いいええな、ウィルスの件ですけど、なんでフロッピー型ウィルスが蔓延っとること を教えてくれへんかったん、お人の悪い。そしたらあんな憂き目に合わんで良かったの に、ったく.... せやけどまあ、おかげさまで超の文字がとれそうですわ、感謝してます。(ドッチヤネン)      超の取れかかった初心者(おいぼれ弥太郎)