Macro
is it possible to control Notepad from a macro ie open a new notepad, paste
data in and then save as. If so how do i call notepad in VB thanks in advance |
Macro
Not sure why you don't just save the Excel file as TEXT, Paste data (use
PasteSpecial Text only") into new Excell Workbook and save as Text. You could open Word and paste data into word and then save word as a text document. "Arnie" wrote: is it possible to control Notepad from a macro ie open a new notepad, paste data in and then save as. If so how do i call notepad in VB thanks in advance |
Macro
You can open notepad with the following statements and then change the focus
to the NotePad window with these commands Root = Environ("SystemRoot") ID = Shell(Root & "\Notepad.exe") AppActivate ID Use copy commnd from excel to put data into Cliupbord before opening Notepad and changing the focus. Then use "SendKey" commnd to send the key stokes required to Notepad. You can use the ShortCuts in NotePad like Cntl+V to paste. "Arnie" wrote: is it possible to control Notepad from a macro ie open a new notepad, paste data in and then save as. If so how do i call notepad in VB thanks in advance |
Macro
Thanks i did find this
Shell "notepad.exe", vbNormalFocus Application.SendKeys ("^V") which works for opening and pasting but i can't find anything for SaveAs i am selecting data from different sheets in excel then using notepad to paste this data into. the notepad is then saved as a script file. Hence the need to control notepad "Joel" wrote: You can open notepad with the following statements and then change the focus to the NotePad window with these commands Root = Environ("SystemRoot") ID = Shell(Root & "\Notepad.exe") AppActivate ID Use copy commnd from excel to put data into Cliupbord before opening Notepad and changing the focus. Then use "SendKey" commnd to send the key stokes required to Notepad. You can use the ShortCuts in NotePad like Cntl+V to paste. "Arnie" wrote: is it possible to control Notepad from a macro ie open a new notepad, paste data in and then save as. If so how do i call notepad in VB thanks in advance |
Macro
My code is equivalent to yours but is more robust by specifying the ID
(incase multiple NotePad applications are open) and wil work if a different folder is the default folder. Root = Environ("SystemRoot") ID = Shell(Root & "\Notepad.exe", vbNormalFocus) SendKeys "^v", Wait:=True SendKeys "^s", Wait:=True SendKeys "%n", Wait:=True SendKeys "c:\temp\abc.txt{Enter}", Wait:=True "Arnie" wrote: Thanks i did find this Shell "notepad.exe", vbNormalFocus Application.SendKeys ("^V") which works for opening and pasting but i can't find anything for SaveAs i am selecting data from different sheets in excel then using notepad to paste this data into. the notepad is then saved as a script file. Hence the need to control notepad "Joel" wrote: You can open notepad with the following statements and then change the focus to the NotePad window with these commands Root = Environ("SystemRoot") ID = Shell(Root & "\Notepad.exe") AppActivate ID Use copy commnd from excel to put data into Cliupbord before opening Notepad and changing the focus. Then use "SendKey" commnd to send the key stokes required to Notepad. You can use the ShortCuts in NotePad like Cntl+V to paste. "Arnie" wrote: is it possible to control Notepad from a macro ie open a new notepad, paste data in and then save as. If so how do i call notepad in VB thanks in advance |
All times are GMT +1. The time now is 05:50 PM. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com