いつもお世話になっております。
今更な話なのですが、
SubプロシージャなどをCallで呼び出す意味は何なのでしょうか?
例)
ユーザーフォーム:UserForm1
Public Sub CommandButton1_Click()
Call DATA_CREATE
End Sub
Sub DATA_CREATE()
Range("A1").value=1
Range("A2").value=5
End Sub
----------------------------
ためしに書いてみましたが(実際に実行していません
Subと書いてあるものはCallを使わなくても
上手く動作します。
Public Sub CommandButton1_Click()
DATA_CREATE
End Sub
上記方法でも大丈夫です。
何か意味などありましたら、教えてくださるとうれしいです!
よろしくお願い致します。
No.3ベストアンサー
- 回答日時:
こんにちは!
すでに回答は出ていますが、
経験上で・・・
複数Sheetを操作したい場合、シートモジュールでは別Sheetを操作できないコトがあります。
しかし、標準モジュールでは可能です。
Changeイベントなどはシートモジュールになりますので
シートモジュールで動かないコードを標準モジュールに記載しておけば
「Call」で呼び出し、別Sheetの操作も可能になることがあります。
そのような場合に「Call」を使ったりします。m(_ _)m
回答ありがとうございました!
シートモジュールを使う場合に良くCallを使うのですね!
うーん、奥が深いです・・・
回答ありがとうございました。
No.2
- 回答日時:
省略可なので、別に書かなくていいんですが、他の言語でも
「サブルーチン」を呼び出すときは「Call」を使うことが多いので、
後で見て分かりやすくするために、あえてつけている人も多い
と思いますよ。
サブルーチン名だけ書いていると、一瞬何をやってるのかわから
なくなりますから・・・。
回答ありがとうございました!
他の言語だと、Call必須だったりしますよね~
色んな言語が混ざって頭がパンクしそうです(笑
回答ありがとうございました。
No.1
- 回答日時:
>何か意味などありましたら
Callステートメントのヘルプをちょっと開いて見てみると
----------------
解説
プロシージャを呼び出すとき、キーワード Call は省略できます。(以下略)
----------------
と書いてある通り、callを省略してプロシジャ名だけ書いてもcallで実行されてるだけです。
「何か意味」という事で言えば、可読性や、社内などでマクロの書き方ルールを定めている場合にそれに準拠するといった意味があります。
回答ありがとうございました!
callが在っても無くてもあまり変わらないとのことですかね。
callが在ったほうが、このプロシージャに飛んでる!とパッと見て分かるので、これからも書いていこうと思います。
回答ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 標準モジュール Public mOnTime As Date Sub sample() '実行プロシ 1 2023/02/22 15:44
- Excel(エクセル) エクセルVBAでオブジェクトが必要です 2 2022/09/10 16:37
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/05/26 17:19
- Visual Basic(VBA) 前回ご教授いただいたコードに覚えたてのループ処理で品名りんごAから順に20回for nextでループ 7 2023/01/13 22:01
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) データベースから絞り込んでデータを読み込み 1 2023/02/21 19:51
- Visual Basic(VBA) Excelで下記のようにマクロを作ったところ、一回目は実行できたのですが、二回目以降「実行時エラー1 1 2022/03/25 08:08
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
エクセルのエラーメッセージ「400」って?
Visual Basic(VBA)
-
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
-
4
VBAで別モジュールへの変数の受け渡し方法
Visual Basic(VBA)
-
5
VBAでワークシートを引数としてサンプル関数に渡したい
Visual Basic(VBA)
-
6
エクセルVBAでシートモジュールでのパブリック変数
Excel(エクセル)
-
7
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
8
Excelの条件付き書式設定の太い罫線
Excel(エクセル)
-
9
アクセスVBAのMe!と[ ]
Access(アクセス)
-
10
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
11
マクロ 実行ボタンを押さずに常に実行
Excel(エクセル)
-
12
VBAマクロ実行時エラーの修正について
Visual Basic(VBA)
-
13
エクセルVBAでUserFormを起動した時
Excel(エクセル)
-
14
DoEventsがやはり分からない
Visual Basic(VBA)
-
15
VBA シートをコピーする際に Copyメソッドは失敗しましたのエラーが出てしまいます
Visual Basic(VBA)
-
16
エクセル マクロ 標準モジュールのマクロから、シートモジュールのマクロを呼び出す
Excel(エクセル)
-
17
【Excel VBA】指定行以降をクリアするには?
Visual Basic(VBA)
-
18
VBA public変数はどのようなことをしたら解放されますか?
Visual Basic(VBA)
-
19
VBAでfunctionを利用しようとしたときに「引数は省略できません」というエラーが出ます
Visual Basic(VBA)
-
20
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA This Workbookモジュール...
-
VBでグローバル変数を宣言するには
-
VBAからpythonへの転向について
-
VBA モジュールで共通に使う変...
-
エクセルVBAでシートモジュール...
-
Apache2 静的・動的モジュール...
-
Excel VBA 定義されたプロージ...
-
Excel VBAで、ユーザーフォーム...
-
グラフのX,Y座標を取得したい
-
Excelで時刻になったら知らせて...
-
【vba】フォームに書いてあ...
-
VBAで旧字体を異字体に一括で変...
-
Excel VBA 『Call』で呼び出す...
-
標準モジュールにpublicで宣言...
-
マクロについて教えてください。
-
モジュールの独立性について
-
C#のアプリケを64bit版のOSで起...
-
ArduinoのジャイロモジュールMP...
-
フォームがアクティブになった...
-
Excel VBAでリンク切れをチェッ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBAでリンク切れをチェッ...
-
Excel VBA 定義されたプロージ...
-
ArduinoのジャイロモジュールMP...
-
ユーザー定義関数に#NAME?が返...
-
VBAで別モジュールへの変数の受...
-
エクセルVBAでシートモジュール...
-
Excel VBA 『Call』で呼び出す...
-
モジュールとは何ですか
-
VBA This Workbookモジュール...
-
VBでグローバル変数を宣言するには
-
グラフのX,Y座標を取得したい
-
VBAで旧字体を異字体に一括で変...
-
モジュールの最大数はいくつな...
-
【vba】フォームに書いてあ...
-
Excel VBAで、ユーザーフォーム...
-
Form間の値の渡し方
-
モジュールとクラスの違いって...
-
Access VBA標準モジュールにつ...
-
本当にPublicな変数(配列で)
-
標準モジュールを削除したい。(...
おすすめ情報