tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^7:  Subroutineの引数が原因でExcelが開放できなくなります。
投稿日: 2009/09/03(Thu) 14:17
投稿者camputer
 るしぇ 様
 どうもありがとうございます!!
度々、有名な上級者の方からアドバイスいただけて光栄です。

 午前中に複数のPCでテストしてみると、開放できるものがありましたので、
コードの他の気になる箇所をなおして見ると現象が改善いたしました!

ビルド実行→メッセージボックス「終了」→停止

とする間、Excel.Exeの動きを観察しておりますが、わざとメッセージボックスの「OK」
を押さずに待機していると、すぐにExcel.Exeが無くなる時もあれば、
なぜかメッセージボックスを閉じるまでExcel.Exeが残るときもあります。
PCのスペックの低さか何かが原因なのかな?などと考えておりますが。。。
とりあえず、アドバイスいただけた後の修正で開放はできるようになったようです。
どうもありがとうございます。

>たまたま解放できることがあります。
>サブルーチンから離れた方がいいでしょう。
>Integer や String は VB 内部の管理下にあり、
と教えていただいたけたので、いろいろはっきり分かったので良かったです。
どうもありがとうございました。
 なぜか
If myShape.Type = 6 Then
のような行を
Dim myShapeType As Integer = myShape.Type
If myShapeType = 6 Then
とすると開放されやすくなったりしました。
 なぜIntegerで引っかかるのか自分でも予測できない現象だったので混乱しましたが、
いろいろアドバイスいただけて、かなり開放しやすいコーディングができるようになりました。
これを期に、自作アプリを色々なOSやスペックを変更して実行・検証するようにしてみます。

 VB界のVipの方々からアドバイスいただけたので非常に光栄です!
どうもありがとうございました!

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。