0
申し訳ありませんが、3日後に私はあきらめます。だから私は何が非常に単純な質問であるべきかを尋ねていますが、私が見つけたすべての例はExcelファイルを開くか、何か私の場合のようにファイルが既に別のマクロから、下のコードを使用して開いている、私はちょうどすでに開いているファイルのためにそれを適応させる方法を理解できないようですね??Excelとそのファイルが既に開いているときに、WordマクロからExcelを参照しますか?
また、コード内からExcelをアクティブなウィンドウに移動する方法を理解しようとしていますか?
Dim oApp As Object
Dim x As Variant
Dim sPath As String
Dim oExcel As Excel.Application
Dim oWB As Workbook
Dim oSheet As String
sPath = "E:\Special Folders\WWWRoot\temp.xlsx"
oSheet = "--Keywording--"
On Error Resume Next
Set oExcel = New Excel.Application
Set oWB = oExcel.Workbooks.Open(sPath)
oExcel.Visible = True
Sheets(oSheet).Select
Range("A1:G1000").Clear
Range("A1").Select
Sheets(oSheet).Cells(1, 1).Select
Sheets(oSheet).PasteSpecial (xlPasteAll)
Range("A1").Select
'set oExcel = GetObject(" Excel.Application ")'または 'Set oExcel = GetObject(" Book2 ")。Application'詳細はこちらをご覧ください:https://support.microsoft.com/ en-us/help/288902/getobject-and-createobject-behavior-of-office-automation-servers – cyboashu
あなたが持っているコードは、あなたが望むことをします。そのコードの最後に、Excelワークブックがアクティブになります。なぜそれは動作していないと思いますか?または、マクロの残りの部分、または別のマクロは、アクティブなアプリケーションをWordアプリケーションに戻し、再びExcelアプリケーションに戻そうとしていますか? (その場合は、おそらくあなたのマクロ間の 'oWB'への参照を渡す必要があるでしょう) – YowE3K
助けてくれてありがとう:私は次のようにすることができましたが、GetObject(oSheet)を使ってシートを参照することはできません。 MSFT文書が提出した申請書。おかげで再び - CES 薄暗いoSheet文字列として oSheet = "--Keywording--" 設定oExcel =のGetObject(、 "まずExcel.Application") 設定oExcel = GetObject関数(oSheet).applicationの "oExcel.Visible = oExcel.Sheets(oSheet) ' ' .Select との真の ' ' '.Range( "A1:G1000")。クリア ' .Cells(1、1).Select 「.PasteSpecial(xlPasteAll) '。セル(1,1).Select ' 'で終わり – CES