
Q1
以下の【値を渡されたコード】から、実行すると、プロシージャ選択画面が出ます
当該画面を出さないようには出来ますか???
ちなみに、モジュールには当該2つのコードしか記述ありません
【値を渡されたコード】
Sub あいうえお(ByRef ws As Worksheet)
ws.Cells(1, 1) = "あいうえお"
ws.Cells(1, 2) = "かきくけこ"
End Sub
Q2【値を渡されたコード】から実行し、Sub 別ブックへ転記()プローシジャを選択すると
Sub あいうえお(ByRef ws As Worksheet)のプローシジャだけではなく、Sub 別ブックへ転記()プローシジャ
も実行されてしまいます。当該、動きは仕様でしょうか???
イメージは、Sub あいうえお(ByRef ws As Worksheet)だけ実行したので、他のプローシジャは
実行されないのではないかという、印象があります
【コード】
Sub 別ブックへ転記()
Dim filpath1 As String
Dim wb1 As Workbook
Dim ws1 As Worksheet
filepath1 = ThisWorkbook.Worksheets("Sheet1").Cells(141, 1)
Set wb1 = Workbooks.Open(filepath1)
Set ws1 = wb1.Worksheets("Sheet1")
ws1.Cells(2, 1) = "xxx"
Call あいうえお(ws1)
End Sub
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Sub あいうえお(ByRef ws As Worksheet)
ws.Cells(1, 1) = "あいうえお"
ws.Cells(1, 2) = "かきくけこ"
End Sub
No.2ベストアンサー
- 回答日時:
こんにちは
>プロシージャ選択画面が出ます
>当該画面を出さないようには出来ますか???
引数を取るプロシージャは、(引数が指定されないので)直接実行はできません。
(論理的な考えができれば、当然のことだとわかるはずです)
他のプロシージャからでも
Call あいうえお
のように引数を省略して呼び出せば、エラーになります。
((必要な)引数が指定されていないので )
受け取り側で、引数を「省略可能」な引数にしておけば、
Call あいうえお
のように省略しても、デフォルト値で実行するような仕組みにはできますが、手動等で直接実行することはできません。
https://learn.microsoft.com/ja-jp/office/vba/lan …
>Sub 別ブックへ転記()プローシジャ
>も実行されてしまいます。当該、動きは仕様でしょうか???
上記の理由で、引数を取るプロシージャは直接実行できないので、ダイアログに出てくるプロシージャ名には表示されないはずです。
何か勘違いなさっているようですが、ダイアログは「実行するプロシージャを指定」するためのものなので、そこで指定したプロシージャが実行されているだけです。
No.1
- 回答日時:
そもそも、
Sub あいうえお(ByRef ws As Worksheet)
のように引数をもっといる場合、直接、Sub あいうえお を実行することはできないと思いますが、
どうして、そのようなことをなさりたいのでしょうか。
もし、
sub proc1()
call proc2
call proc3
end
sub proc2()
・・・途中省略・・・
end
sub proc3()
・・・途中省略・・・
end
となっていて、proc2,proc3を直接呼び出したいなら、
proc2,proc3は、
①引数を持たないこと
②モジュール変数を参照しないこと
が条件になります。
ご指摘ありがとうございます
引数を受け取るプロシージャ単体では
実行できないんですね
やりたい理由は、引数を受け取った後の動きを、確認したいだけです
なので、渡す側からやれば分かる
のですが、callのプロシージャが
増えてくると、全部のプロシージャが、実行されるとわかりにくいので
単体で、出来ないかなぁと考えました
仕様であればOKです
ありがとうございます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】参照渡しとモジュールレベル変数 どっちが よく使うものですか? 2 2025/02/16 15:37
- Excel(エクセル) 【マクロ】参照渡しについて。受け取る変数の名前を変更すると、動かなくなる 2 2025/02/16 09:29
- Visual Basic(VBA) 【マクロ】1つのマクロの中に、ブック指定とシート指定が混在しても良いのですか? 2 2024/05/16 07:13
- Excel(エクセル) 【マクロ】Call関数で呼び出した場合、共通の変数宣言は、省略できますか? 2 2025/02/09 10:17
- Excel(エクセル) 3つのマクロを連続実行の中で、1つ目のマクロ要件を満たさなかったら、マクロ2・3を実行しない為には 1 2023/10/15 13:42
- Visual Basic(VBA) vbaのエラー対応(実行時エラー7:メモリが不足しています) 4 2023/04/24 00:20
- Excel(エクセル) 【マクロ】AブックからBブックへデータコピーの後、Bブックに上書きされないようにするには? 3 2024/12/22 11:53
- Visual Basic(VBA) クリップボードに貼付している文字列が、マクロで別ブックへ転記すると、消えてしまう 1 2023/10/15 13:36
- Visual Basic(VBA) 今日の日付が過ぎたらその行を削除したい 1 2023/04/01 20:06
- Excel(エクセル) 【マクロ】1回目の実行後、2回目からは実行できないようにはできますか? 3 2025/02/18 21:20
このQ&Aを見た人はこんなQ&Aも見ています
-
【マクロ】モジュール変数の記述時、Callにて、呼び出されたプロシージャから実行するとエラーとなる?
Visual Basic(VBA)
-
VBAの「To」という語句について
Visual Basic(VBA)
-
以下のプログラムの実行結果はどうなると思いますか? その理由も教えてください。
Visual Basic(VBA)
-
-
4
【ExcelVBA】5万行以上のデータ比較の効率的な処理方法について
Visual Basic(VBA)
-
5
Visualbasicの現状について教えてください
Visual Basic(VBA)
-
6
VB.net 文字列から日付型へ変更したい
Visual Basic(VBA)
-
7
C言語 関数、変数の宣言について
C言語・C++・C#
-
8
質問58753 このコードでうまく動作しません。どうしたら良いですか Private Sub Wor
Visual Basic(VBA)
-
9
算術演算子「¥」の意味について
Visual Basic(VBA)
-
10
Vba FileSystemObject オブジェクトに使って拡張子、BaseNameを取り出す
Visual Basic(VBA)
-
11
【マクロ】変数を使った、文字の種類の変更にて、エラーとなる。
Visual Basic(VBA)
-
12
改行文字「vbCrLf」とは
Visual Basic(VBA)
-
13
【ExcelVBA】dictionaryの重複判断の基準(セル結合だと違う値として認識される)
Visual Basic(VBA)
-
14
C言語のことです。写真(見にくくてすいません)の下のプログラムを実行したいのですが四行目がおかしいと
C言語・C++・C#
-
15
プログラミングに興味があるのですが、作りたいものはありません。 ゲーム機とかパソコンの中身(ソースコ
その他(プログラミング・Web制作)
-
16
VBAでFOR NEXT分を Application.OnTimeを使って
Visual Basic(VBA)
-
17
COPYコマンドで、最後に1文字「Hex1A」が付くのはなぜ?外し方は?
その他(プログラミング・Web制作)
-
18
(EXCEL超初心者)EXCELの関数(またはマクロ)で質問です。
Visual Basic(VBA)
-
19
MOVEコマンドでサブフォルダーからの移動は?
その他(プログラミング・Web制作)
-
20
エクセルの改行について
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【マクロ】オートフィルター を...
-
【ExcelVBA】5万行以上のデー...
-
VBAでCOPYを繰り返すと、処理が...
-
vbsでのwebフォームへの入力制限?
-
Vba Array関数について教えてく...
-
VBAでユーザーフォームを指定回...
-
エクセルでCDOを使ったメール送...
-
Vba セルの4辺について罫線が有...
-
VBAでセルの書式を変えずに文字...
-
【VBA】 結合セルに複数画像と...
-
【ExcelVBA】値を変更しながら...
-
【マクロ】シートの変数へ入れ...
-
エクセルのマクロについて教え...
-
ワードの図形にマクロを登録で...
-
testファイル内にある複数のpng...
-
ダブルクリックで貼り付けた画...
-
VBAでFOR NEXT分を Application...
-
【マクロ】並び替えの範囲が、...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba セルの4辺について罫線が有...
-
vbsでのwebフォームへの入力制限?
-
【ExcelVBA】5万行以上のデー...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
【マクロ】並び替えの範囲が、...
-
エクセルの改行について
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
VBAでCOPYを繰り返すと、処理が...
-
VBA ユーザーフォーム ボタンク...
-
エクセルのVBAコードと数式につ...
-
エクセルのVBAコードについて教...
-
[VB.net] ボタン(Flat)のEnable...
-
【マクロ】変数を使った、文字...
-
改行文字「vbCrLf」とは
-
質問58753 このコードでうまく...
-
【マクロ】シートの変数へ入れ...
-
ワードの図形にマクロを登録で...
-
算術演算子「¥」の意味について
おすすめ情報