Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


12182 / 13646 ツリー ←次へ | 前へ→

【11592】エクセルブックを別プロセスで開く方法 FFCS 04/3/12(金) 9:39 質問
【11612】Re:エクセルブックを別プロセスで開く方法 Jaka 04/3/12(金) 12:45 回答
【11668】Re:エクセルブックを別プロセスで開く方法 アイエネス 04/3/13(土) 22:28 回答
【11908】Re:エクセルブックを別プロセスで開く方法 FFCS 04/3/18(木) 15:49 お礼

【11592】エクセルブックを別プロセスで開く方法
質問  FFCS  - 04/3/12(金) 9:39 -

引用なし
パスワード
   ヴァージョン2000で作業をしております。
base.xlsのユーザフォームのボタンクリックにより、aaa.xlsを起動します。
aaa.xlsにデータ入力後、×でaaa.xlsを閉じもとのbase.xlsのユーザフォーム
をアクティブにするようにしたいのですが。

「vbModeless」を使用してaaa.xlsを開くと、base.xlsのユーザフォーム
が最前表示されaaa.xlsにデータ入力するのに邪魔になってしまします。

このbase.xlsのユーザフォームを最前表示しないか、aaa.xlsを別プロセスで開き
データ入力後、閉じればうまくいくのでは?と思ったのですが、思うように
動きません。
どちらの方法でもいいので、ご存知の方教えて頂けないでしょうか?
よろしくお願い申し上げます。

【11612】Re:エクセルブックを別プロセスで開く方法
回答  Jaka  - 04/3/12(金) 12:45 -

引用なし
パスワード
   フォームモジュールにこんな風に書いてあるとして。

Private Sub CommandButton1_Click()
  Workbooks.Open ("C:\Windows\デスクトップ\aaa.xls")
End Sub

base.xlsのThisWorkBookに

Private Sub Workbook_WindowActivate(ByVal Wn As Excel.Window)
  Dim Ufm As Object
  For Each Ufm In UserForms
    If Ufm.Name = "UserForm1" Then
      UserForm1.Show
      Exit For
    End If
  Next
End Sub

Private Sub Workbook_WindowDeactivate(ByVal Wn As Excel.Window)
  If ActiveWorkbook.Name = "aaa.xls" Then
    UserForm1.Hide
  End If
End Sub

こんな程度しか思いつきませんでした。

【11668】Re:エクセルブックを別プロセスで開く方法
回答  アイエネス  - 04/3/13(土) 22:28 -

引用なし
パスワード
   ブックを別プロセスで開くには、エクセルの実行ファイルの引数として、ファイルのパスを渡すようにすれば、別プロセスで開けます。
CreateObject、GetObjectなどを使うのも手かもしれません

【11908】Re:エクセルブックを別プロセスで開く方法
お礼  FFCS  - 04/3/18(木) 15:49 -

引用なし
パスワード
   jakaさん、アイエネス さん

ありがとうございます。
両方で試してみたところ、openを使用して
開いたエクセルに書込んだりすると非常に動きが
遅くなったのですが、jakaさんが使用された場合はいかがでしたでしょうか?

今回は、オブジェクトの方で作成させていただきました。
無事、動いたのを確認できました。

ほんと助かりました。
jakaさん、アイエネス さん、ありがとうございました。

12182 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free