tagCANDY CGI VBレスキュー(花ちゃん)の Visual Basic 6.0用 掲示板 [ツリー表示へ]   [Home]
一括表示(VB6.0)
タイトルMicrosoft Word で.Quit
記事No11041
投稿日: 2008/01/03(Thu) 12:08
投稿者Do_Shirouto
明けましておめでとう御座います。
昨年は色々教えて頂き有難う御座いました。
今年も宜しくお願いいたします。
今VB6でMicrosoft Wordを開いたり保存したく
'---------------------------------
Option Explicit
Dim strPath As String
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
'-----------------------------------
Private Sub Command1_Click()
'すでに1個のFileが開いている状態
wdApp.Quit
End Sub
'-----------------------------------
上記ように記述すると、上手にFileは閉じてくれるのですが、
下記のように新たに次のFileを開こうとすると、
前のFileが残りその上に新しいFileが表示されます。
前のFileを消して新しいFileが表示したいのですが?
'-------------------------------
Private Sub Command1_Click()
'すでに1個のFileが開いている状態
wdApp.Quit
Set wdApp = CreateObject("Word.Application")
Set wdDoc = wdApp.Documents.Open(strPath & List1.Text)
'以下処理が続く
End Sub
'----------------------------------
wdApp.Quitのすぐ下にDoEventsを入れてもダメでした。
どなたかご指導のほど宜しくお願い申し上げます。

[ツリー表示へ]
タイトルRe: Microsoft Word で.Quit
記事No11042
投稿日: 2008/01/03(Thu) 19:00
投稿者通りすがっちゃった
自信ないけど、とりあえずQuitの後にNothingしてみては?

[ツリー表示へ]
タイトルRe: Microsoft Word で.Quit
記事No11043
投稿日: 2008/01/03(Thu) 21:15
投稿者花ちゃん
実際のコードを投稿して下さい。
特に最初のファイルを表示している部分等を。

又は、事象を再現できるコードを作成して投稿して下さい。

一部分だけを抜き出したコードでは、正確な判断はできないかと思います。
(少なくても投稿されたコードを動くように追加修正したものでは、そのように
 表示されませんが。)

[ツリー表示へ]
タイトルRe^2: Microsoft Word で.Quit
記事No11044
投稿日: 2008/01/04(Fri) 09:37
投稿者Do_Shirouto
> 実際のコードを投稿して下さい。
> 特に最初のファイルを表示している部分等を。
>
> 又は、事象を再現できるコードを作成して投稿して下さい。
花ちゃんさん 通りすがっちゃったさん ご解答有難う御座います。
よくコードを読み返し変数を変えた所出来ました。
どうも変数に思いと違う値が入っていたようです。
変数をVariant→Strigに変えてみました。
本当に有難う御座いました
'--------------------------
Dim strPath As String
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Dim strI As Strig
'----------------------
Private Sub Form_Load()
strPath = "C:\Documents and Settings\Owner\My Documents\Dog\"
'strPath より.Doc FileのみList1.AddItem
strI = "表示なし"
End Sub
'--------------------------
Private Sub List1_Click()
If strI = "表示なし" Then
Else
wdApp.Quit
End If
Set wdApp = CreateObject("Word.Application")
Set wdDoc = wdApp.Documents.Open(strPath & List1.Text)
wdApp.Visible = True
strI = "表示あり"
End Sub

[ツリー表示へ]