人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VB2010で同時処理

VB2010で
ボタン1を押すと停止させるまでループ開始
ボタン2を押すと停止させるまでループ開始
ボタン3を押すと停止させるまでループ開始
というプログラムを書いたとして、
ボタン1を押しループ処理中の時にボタン2やボタン3を操作して別のループを開始させることは出来るでしょうか?

ExcelVBAでコードを書いたのですが、同時に2つのマクロを実行することが出来ないと知ったため別の方法で実現しようと思い、VB2010のことを調べています。


●質問者: lupink
●カテゴリ:コンピュータ
✍キーワード:つの コード プログラム ボタン マクロ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● きゃづみぃ
●50ポイント

DoEventsを実行させると たまったキューを実行することができます。

なので ループ中にDoEventsを実行するようにしてやればよいかと。

◎質問者からの返答

回答ありがとうございます。

ExcelVBAでも工夫次第で何とかなるんですね。


2 ● rsc
●50ポイント

こちらは参考になるでしょうか。

●方法 : バックグラウンド ワーカーを使用する

http://msdn.microsoft.com/ja-jp/library/cc221403(v=vs.95).aspx

●Visual Basic定番ワザ大全 [単行本] 日向 俊二(著)

>第26章 プロセスとスレッド ――バックグラウンドで実行する

Visual Basic定番ワザ大全

Visual Basic定番ワザ大全

●Visual Basic 2010入門 [大型本] 笠原 一浩(著)

>7-3 バックグラウンド処理

Visual Basic 2010入門

Visual Basic 2010入門

上の方が正式なのかも知れませんが、「Applocation.DoEvents()」をループの中に入れる方法の方が簡単かも知れません。下記の本のp.161参照。

●明快入門 Visual Basic 2008 ビギナー編 (林晴比古実用マスターシリーズ) [大型本] 林 晴比古(著)

明快入門 Visual Basic 2008 ビギナー編 (林晴比古実用マスターシリーズ)

明快入門 Visual Basic 2008 ビギナー編 (林晴比古実用マスターシリーズ)

※参考URL

●Application.DoEvents メソッド (System.Windows.Forms)

http://msdn.microsoft.com/ja-jp/library/system.windows.forms.application.doevents(v=vs.80).aspx

●@IT:.NET TIPS 時間がかかる処理での「応答なし」を回避するには ...

http://www.atmarkit.co.jp/fdotnet/dotnettips/136doevents/doevents.html

●時間のかかる処理の進行状況を表示する: .NET Tips: C#, VB.NET, Visual Studio

http://dobon.net/vb/dotnet/programing/displayprogress.html

●Office TANAKA - Excel VBA関数[DoEvents関数]

http://officetanaka.net/excel/vba/function/DoEvents.htm

●Office TANAKA - Excel VBA Tips[「お待ちください」メッセージの表示]

http://officetanaka.net/excel/vba/tips/tips23.htm

◎質問者からの返答

ありがとうございます。

まだまだ勉強不足でよくわからないのですが、リンク先も勉強してみます。


3 ● SweetSmile1978
●200ポイント ベストアンサー

VBA ではどうかわかりませんが、

Visual Basic 2010 でなら、それぞれのループの処理が完全に独立していて全く関係しない場合は

非同期処理やスレッドを作成してループをその別スレッドで実行することで実現できます。

ループ中で使用する変数がそれぞれのループで共通の場合は

データの扱いに注意する必要が出てきます。

http://msdn.microsoft.com/ja-jp/library/ms228969.aspx

◎質問者からの返答

VB2010なら同時に複数のループを動かせるんですね。

回答ありがとうございます。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ