|
Activate Word without starting new Word instance
I would be great to find a way to activate Word without starting a new
Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
What do you mean by "activate Word"?
Have you tried asking this on a Word or Office forum, since it appears to be a Word question, not a Windows question? -- Glen Ventura, MS MVP Shell/User, A+ http://dts-l.org/goodpost.htm "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
If you mean from VB, there are two methods --
1) Late binding Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") If wrdApp is nothing then .... Word was not running .... no instance to get or 2) Early binding Dim wrdApp as Word.Application On error resume next Set wrdApp = Word.Application If wrdApp is nothing then .... Word was not running .... no instance to get "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
Since my question involves both Word and the Windows envionment, I cross
posted to a Word vba group, which you might have noticed if you had looked at the To line. To activate means to bring a minimized or inactive window to the fore, so that it becomes the active window. This is different from opening a window or a program, which means starting up a program that is closed. glee wrote: What do you mean by "activate Word"? Have you tried asking this on a Word or Office forum, since it appears to be a Word question, not a Windows question? "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
Thanks Jezebel. Since it is possible from the Run dialog box to start Word and run a macro in one step, I'm thinking that if, with Word open but not active, I ran the macro I'm looking for, I could get a macro that activated the open Word window without opening a second instance of Word. However, when I create a macro in Normal called WordActivate using the code you suggested, Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") and (with Word open but not active) run this in the Run dialog box: Winword.exe /mWordActivate A second instance of Word opens. The same happens when I put the other set of code in WordActivate. Any other ideas? Thanks much. Larry Jezebel wrote: If you mean from VB, there are two methods -- 1) Late binding Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") If wrdApp is nothing then .... Word was not running .... no instance to get or 2) Early binding Dim wrdApp as Word.Application On error resume next Set wrdApp = Word.Application If wrdApp is nothing then .... Word was not running .... no instance to get "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
This makes no sense at all. Macros are located within a Word module, so you
have to instantiate Word to run them. The code I offered is for VB not VBA. "Larry" wrote in message ... Thanks Jezebel. Since it is possible from the Run dialog box to start Word and run a macro in one step, I'm thinking that if, with Word open but not active, I ran the macro I'm looking for, I could get a macro that activated the open Word window without opening a second instance of Word. However, when I create a macro in Normal called WordActivate using the code you suggested, Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") and (with Word open but not active) run this in the Run dialog box: Winword.exe /mWordActivate A second instance of Word opens. The same happens when I put the other set of code in WordActivate. Any other ideas? Thanks much. Larry Jezebel wrote: If you mean from VB, there are two methods -- 1) Late binding Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") If wrdApp is nothing then .... Word was not running .... no instance to get or 2) Early binding Dim wrdApp as Word.Application On error resume next Set wrdApp = Word.Application If wrdApp is nothing then .... Word was not running .... no instance to get "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
Why wouldn't you just click on the icon in the taskbar? There's no need to
use VBA to do this, so I don't understand why you would ask this in a VBA newsgroup. Or are you trying to write a WORD macro that will activate a minimized Window? In that case, what is the event or action that you are going to use in order to know when this should happen? -- Jeff Richards MS MVP (Windows - Shell/User) "Larry" wrote in message ... Since my question involves both Word and the Windows envionment, I cross posted to a Word vba group, which you might have noticed if you had looked at the To line. To activate means to bring a minimized or inactive window to the fore, so that it becomes the active window. This is different from opening a window or a program, which means starting up a program that is closed. glee wrote: What do you mean by "activate Word"? Have you tried asking this on a Word or Office forum, since it appears to be a Word question, not a Windows question? "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
If you want to get hold of an existing instance of Word, then you should use
GetObject as Jezebel described to get an object reference to it. Then you can use the Run method of the Word Application object to run the macro. -- Regards Jonathan West - Word MVP www.intelligentdocuments.co.uk Please reply to the newsgroup "Larry" wrote in message ... Thanks Jezebel. Since it is possible from the Run dialog box to start Word and run a macro in one step, I'm thinking that if, with Word open but not active, I ran the macro I'm looking for, I could get a macro that activated the open Word window without opening a second instance of Word. However, when I create a macro in Normal called WordActivate using the code you suggested, Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") and (with Word open but not active) run this in the Run dialog box: Winword.exe /mWordActivate A second instance of Word opens. The same happens when I put the other set of code in WordActivate. Any other ideas? Thanks much. Larry Jezebel wrote: If you mean from VB, there are two methods -- 1) Late binding Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") If wrdApp is nothing then .... Word was not running .... no instance to get or 2) Early binding Dim wrdApp as Word.Application On error resume next Set wrdApp = Word.Application If wrdApp is nothing then .... Word was not running .... no instance to get "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
In Windows, making an open window the active window is usually called putting the
window in "focus". That is the same for all open windows. You are not trying to "activate Word" (which is a program); you are trying to make active an open window. it helps if you make clear what you are trying to do, in the first place. As Jeff asked, why aren't you just clicking the taskbar button to toggle focus on the window? Apparently you are trying to use a macro for some reason, and that is outside the scope of this group, so I fail to see why you think crossposting it to a win98 group was necessary. Good luck......it look like the people in the vba group are setting you straight. -- Glen Ventura, MS MVP Shell/User, A+ http://dts-l.org/goodpost.htm "Larry" wrote in message ... Since my question involves both Word and the Windows envionment, I cross posted to a Word vba group, which you might have noticed if you had looked at the To line. To activate means to bring a minimized or inactive window to the fore, so that it becomes the active window. This is different from opening a window or a program, which means starting up a program that is closed. glee wrote: What do you mean by "activate Word"? Have you tried asking this on a Word or Office forum, since it appears to be a Word question, not a Windows question? "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
All I really want is to be able, using a single keystroke not the mouse,
to bring the focus to the already open Word window. Not using Alt+Tab, not using the Mouse to click on the task bar button, but to use a keystroke that perhaps runs a .vbs file that makes the open Word instance the active window. I'm constantly going back and forth between Word and other application windows, and I want an instant, keyboard-oriented, one-step way of returning to the Word window. Larry Jonathan West wrote: If you want to get hold of an existing instance of Word, then you should use GetObject as Jezebel described to get an object reference to it. Then you can use the Run method of the Word Application object to run the macro. "Larry" wrote in message ... Thanks Jezebel. Since it is possible from the Run dialog box to start Word and run a macro in one step, I'm thinking that if, with Word open but not active, I ran the macro I'm looking for, I could get a macro that activated the open Word window without opening a second instance of Word. However, when I create a macro in Normal called WordActivate using the code you suggested, Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") and (with Word open but not active) run this in the Run dialog box: Winword.exe /mWordActivate A second instance of Word opens. The same happens when I put the other set of code in WordActivate. Any other ideas? Thanks much. Larry Jezebel wrote: If you mean from VB, there are two methods -- 1) Late binding Dim wrdApp as object On error resume next Set wrdApp = GetObject("Word.Application") If wrdApp is nothing then .... Word was not running .... no instance to get or 2) Early binding Dim wrdApp as Word.Application On error resume next Set wrdApp = Word.Application If wrdApp is nothing then .... Word was not running .... no instance to get "Larry" wrote in message ... I would be great to find a way to activate Word without starting a new Word instance. I think I asked about this a year or two ago, and didn't get anywhere. Any ideas? |
All times are GMT +1. The time now is 09:29 AM. |
|
Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Win98Banter.com