別のプロシージャに変数を渡せなくて困っています。
下記の内容を実行させようとしています。
1.command1ボタンをクリックして計算を終えて
2.command2ボタンをクリックすると計算結果をクリップボードに入れてメモ帳に貼り付ける
コードの概要は下記です。
【1.】//////////////////////////////////////////////////////////////
Private Sub Command1_Click()
Dim final as String
'いろいろと計算して最終的にfinalというstring型変数に文字列を得る。
final=計算結果
End Sub
【2.】//////////////////////////////////////////////////////////////
Private Sub command2_click()
Clipboard.Clear
Clipboard.SetText final
Dim memo As Long
memo = Shell("Notepad.exe", vbNormalFocus)
AppActivate memo, True 'アプリをアクティブにする
SendKeys "^v"
End Sub
//////////////////////////////////////////////////////////////////////
調べた結果,ByValがキーワードではないかと思い,Private Sub Command1_Click(ByVala final as string)など試してみましたができませんでした。
[余談]
1.のプロシージャ内で,クリップボードに入れてしまえばよいのですが,そうすると,1.の処理が終わってから,command2を押すまでの間にユーザがクリップボードを利用したら,このプログラムが成立しなくなるので,それは避けたいと思っています。
No.1ベストアンサー
- 回答日時:
変数 final の宣言を Commanc1_Click の外に出してみてください。
Option Exciplicit などの直後に宣言し、スコープがフォーム内になるように宣言して見てください。
プロシジャ内で宣言すると、スコープはプロシジャ内になってしまいます。
ありがとうございました。
------------------------
(General)で下記の宣言をすることで解決しました。
Public final As String
No.2
- 回答日時:
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) 【VBA】先月分の取得ができない理由が分かりません。 2 2022/04/24 11:16
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る EXEの実行内容の結果によって、戻り値を0か1かで返したい 1 2023/07/04 16:40
- Visual Basic(VBA) batからexeを実行し戻り値を受け取る バッチからEXEの結果を受け取りたいのですが、 下記のバッ 1 2023/07/04 15:13
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Visual Basic(VBA) 稀に1円合いません? Sheet1から金額と個数を貼り付ける下記コードで、金額を切り上げるコードを何 3 2022/09/05 15:11
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
『エッジの効いた○○』の意味。
-
エクセルVBA テキストボックス...
-
油性マジックの消し方
-
どこにもフォーカスを当てたくない
-
キャレットをクリック位置に
-
GridViewでハイライトを使用し...
-
他の人には声だして挨拶してる...
-
スプレットシートでフォーカス...
-
テキストボックスの入力可/不...
-
コマンドボタンのEnterイベント...
-
Firefoxのグーグルツールバーみ...
-
バナー作りにチャレンジ!!
-
携帯電話が安いところ。
-
Private Sub内でSubをCallしたい
-
F503iにSVって表示されてるんで...
-
HTMLからテキスト形式に変更の仕方
-
業務に差し支えのないテンキー...
-
VB2005でのTabControlについて
-
VBで、Outlookのデスクトップ通...
-
iPod touchが反応しない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
どこにもフォーカスを当てたくない
-
C# ReadOnlyのTextBoxで
-
業務に差し支えのないテンキー...
-
エクセルVBA テキストボックス...
-
他の人には声だして挨拶してる...
-
ユーザーフォームのSetFocusが...
-
矢印(左右)キーでイベントを...
-
コマンドボタンのEnterイベント...
-
GridViewでハイライトを使用し...
-
テキストボックス入力後、警告...
-
VBAでのユーザーフォーム上...
-
Private Sub内でSubをCallしたい
-
フォーカスを移動させない方法
-
小学校で遊ぶてんかのルールに...
-
炊飯器のセットの音と出来上が...
-
Accessの更新後処理で特定の条...
-
VB.NET ボタン押下で一つ前の...
-
『エッジの効いた○○』の意味。
-
油性マジックの消し方
-
タブコントロールのフォーカス...
おすすめ情報