Jump to content
Macro Express Forums

acantor

Members
  • Posts

    1,531
  • Joined

  • Last visited

  • Days Won

    18

Everything posted by acantor

  1. My main concern with ChatGPT is that its responses may be inaccurate or wrong. Some responses may even be total fabrications. I recently asked ChatGPT a question about a certain 18th century composer. Much of the answer makes sense and conforms to what is known about the composer. But ChatGPT seems to have invented a musical collaboration between the composer and a religious scholar, perhaps because their surnames are similar. The likelihood of a collaboration between the two is slim -- the composer was 46 years older.
  2. I downloaded the application and took it for a test ride, both with and without Macro Express. It's an extremely inaccessible program. Macro Express is unable to interact with the user interface in any meaningful way. An application-specific script for Anyviewer isn't even possible. From a macro-scripter's perspective, Anyviewer is useless. I uninstalled it! Find a different application if you're wanting to automate tasks via Macro Express.
  3. My code is illustrative. You'll need to modify several lines before the script might work. I have no way of knowing the path to the executable on your computer. And I don't even know the name of the executable. So I invented the path and the program name. This line is probably totally wrong! c:\Programs\Anyviewer.exe
  4. It looks like the "AeroAdmin v4.9" window is not receiving keyboard input focus when it opens. Your script may need to give it focus before the script does anything else. Maybe something like this: // Launch Anyviewer... Program Launch: "c:\Programs\Anyviewer.exe" (Normal) // Wait up to five seconds for the "AeroAdmin" window to open Repeat Start (Repeat 10 times) If Window "AeroAdmin v" is running // Parital match of window that isn't gaining focus Window Activate: AeroAdmin v // Give focus to the window Repeat Exit Else Delay: 500 milliseconds End If End Repeat // Act on the now-focused AeroAdmin window... Text Type (Simulate Keystrokes): <TAB>12345<TAB>abcde<ENTER>
  5. No problem using one macro to collect the data, and a second macro to output the results. The key is to end the data collection macro with this: Variable Save: Save Text Variables And to start the macro that outputs the data with this: Variable Restore: Restore Text Variables You can more-or-less divide my code into two. You may need to modify the number of tabs in the macro that spits out the answers. In the data collection macro, you will be prompted to enter the name, phone number, etc. Each value is stored in a variable, e.g., %FirstName% and %PhoneNumber%. In the data output macro, you navigate from field to field by simulating Tab presses. Here's how to output three Tabs... Text Type (Simulate Keystrokes): <TAB><TAB><TAB> When you reach the field you want, output the variable that goes in that field: Text Type (Simulate Keystrokes): %FirstName% I'm not sure what you're referring to by "VARIABLE SET COMMANDS PROMPT." For this project, you need the "Variable Set String" instruction: Variable Set String %FirstName%: Prompt
  6. I think you're on the right track. Maybe something like this? // (Optional) Restore the values of the variables from the previous run Variable Restore: Restore Text Variables // Collect data... Variable Set String %FirstName%: Prompt Variable Set String %LastName%: Prompt Variable Set String %PhoneNumber%: Prompt // etcetera // Output data... Text Type (Simulate Keystrokes): %FirstName% Text Type (Simulate Keystrokes): <TAB> Text Type (Simulate Keystrokes): %LastName% Text Type (Simulate Keystrokes): <TAB> Text Type (Simulate Keystrokes): %PhoneNumber% Text Type (Simulate Keystrokes): <TAB> // etcetera // (Optional) Save the values of the variables for use next time Variable Save: Save Text Variables
  7. Try adding a short delay after the copy instruction. If the content of the cell is not getting copied, try the following. F2 puts a cell in edit mode. The method WON'T work if the cell contains a formula. The formula will get copied, not the value. Text Type (Simulate Keystrokes): <F2> Delay: 100 milliseconds Text Type (Simulate Keystrokes): <CONTROL>a Delay: 100 milliseconds Text Type (Simulate Keystrokes): <CONTROL>c Delay: 100 milliseconds Text Type (Simulate Keystrokes): <ESC>
  8. Yes, you can start at the beginning... :Start Repeat Start (Repeat 10 times) Mouse Move: 100, 200 Relative to Screen Get Pixel Color from Beneath the Mouse into %Pixel% If Variable %Pixel% Equals "123456" // Success. Do something and then stop Macro Stop Else Delay: 1000 milliseconds End If End Repeat // The colour was not found after ten seconds. Try again! Goto:Start ...but this kind of script can lead to a lot of mischief. I think it's better to have a fail-safe... If the colour is not found after a certain amount of time, the macro should simply stop. Otherwise, you risk an infinite loop.
  9. Repeat Start (Repeat 10 times) Mouse Move: 100, 200 Relative to Screen Get Pixel Color from Beneath the Mouse into %Pixel% If Variable %Pixel% Equals "123456" // Success. Do something. Repeat Exit Else Delay: 1000 milliseconds End If End Repeat
  10. I suggest submitting a feature request. The folks at Insight Software have always been responsive to requests for Macro Express enhancements and to reports of bugs. They don't (or can't) do everything asked for, but there are features in the program today that began as requests from users.
  11. Earlier in this thread, I shared my "best" macro of 2022, which holds down the mouse button for five seconds and then releases it. This afternoon I've been experimenting with ChatGPT. It's surprisingly good. Much better than I expected. In a moment of levity, or perhaps of optimism, I asked ChatGPT a question about Macro Express: The AI-generated response is fascinating, although I think ChatGPT may have been hallucinating about how Macro Express works! ChatGPT's database mostly contains information gleaned from the web prior to 2021, so this inaccurate but plausible-sounding answer wasn't pulled from this thread.
  12. On some computers, I have no problem using Macro Express to "expropriate" F1 for my own purposes. On other computers, especially in corporate environments, key combinations that include F1 are not recognized when remapped, e.g., Shift + Alt + F1 and Ctrl + Alt + F1. It's as though certain applications "see" the key combinations before Macro Express does. I'm not sure whether this relates to the version of Macro Express. I have remapped F1 on my up-to-date version of MEP running Windows 10, but I hit walls when using the 18-month old version of MEP that my corporate client uses, also running Windows 10. My guess it's less about the MEP version than about the way my client configures their computers.
  13. I don't see an obvious reason why a hotkey macro won't respond in the "Disk Management" window. Try recreating the macro from scratch, paying extra attention to its scope. Experiment with window specific and application specific, partial / exact matches, and hidden / non-hidden windows. For testing purposes, set the scope to Global. Try totally different hotkeys. I recently stumbled on a bunch of key combos I couldn't assign because a background application "saw" the hotkeys before Macro Express did. (In this case, the affected hotkeys included F1, e.g., Ctrl + Alt + F1.)
  14. Firefox has a search-links-only feature which I've used instead of Ctrl + F to reduce search volume. The feature is helpful in another situation: If a string appears many times on a page, but only once as part of a hypertext link, search-links ensures the script zeros in on the link. The hotkey for search-links in Firefox is the open single quote character. That's a problem. If focus is in an editable field, the hotkey fails; instead the hotkey inserts the single quote character. (Maybe there's a way to change the hotkey to Ctrl + something, which would allow feature to work in more contexts.) Strangely, the feature appears to be absent in Chrome and Edge.
  15. I've built scripts that search for text adjacent to a field I want to focus. Then the script tabs or (Shift+Tab) to the target. In pseudo code.... Type "Control+F" // Find on the page. In some applications, you can use F3. Wait a split second Type "City:" // Unique text near the field I want to get to Type "{Enter}" // Initiate the search Type "{Esc}" // Cancel the search Wait a split second Type "{Tab}{Tab}" // Navigate to the field i want to reach This approach is fussy. It takes trial and error to get the timing right, and to work out what text to search for. But with effort, I can usually get it to work almost 100% of the time.
  16. I would find it be helpful to see the code you've tried, and to look at some of the actual data. When you say, "I'd like to be able to do something different every time %T[1]% changes", I think you're saying you want to compare the value of %T[1]% against the value obtained the last time you triggered the macro. If that's the case, make sure your macro begins with "Variable Restore" and ends with "Variable Save."
  17. Today I learned that in Microsoft Word, Alt + Numpad 5 is the hotkey to select a table. With this new factoid in mind, I began to write a Macro Express script to do something with it. The script runs through a multi-step process that selects an entire table, copies it, assigns the data to a variable, parses the data, etc. The problem is that my script, which starts with this line... Text Type (Simulate Keystrokes): <ALT><KEYP5> ... doesn't select the table. Instead, the script inserts an emoji for the club, as in the suit in a pack of playing cards: ♣ I tried different hotkey activations for my macro, including "Alt + /" and "Ctrl + /" but the result was the same. I tried <ALTD><KEYP5><ALTU>. Same thing. Any ideas on why I'm getting an emoji instead of a key press?
  18. Maybe something like this? I opted for hotkey activation, and chose LMouse as the hotkey. Lock Keyboard and Mouse Wait for Left Mouse Click // One click On Error Catch Error: Condition was not met within the specified amount of time Text Box Display: One click Macro Stop End Catch Error End Error Text Box Display: Two clicks Unlock Keyboard and Mouse A script like this needs to be window or program specific. Otherwise, left clicking anywhere, and in any context, will trigger the macro. Which you probably don't want to happen!
  19. Very nice, rberq! I'd be curious to learn how your macro detects the second key press. Once upon a time, I wrote a macro activated by Esc. If I pressed Esc once, the macro outputted Esc. If I pressed it twice, the macro outputted Esc twice. But if I was impatient and quickly pressed Esc three times, the macro closed the current window. I eventually gave up on this macro. Initially it was fun to watch a window close by being persistent with Esc. But after a few days, I tired of the delay when pressing Esc once, as the macro doesn't send keystrokes until the last line of the script. (I press Esc dozens or hundreds of times a day, so I found the delay too noticeable.) But your idea of only waiting for a second key press might be the solution that eluded me. Simplicity trumps cleverness!
  20. This simple macro that I developed last summer hasn't made my life any easier, but it's simplifying someone else's. It's a way to drag the mouse using the absolute minimum amount of physical effort: no clicks, no holding down mouse buttons. All he has to do is point to the starting location, point to the end location, and the macro does the heavy lifting. Due to a congenital condition, this guy has limited hand strength. Holding down mouse buttons becomes very tiring very fast. But some tasks he performs MUST be done by dragging. There's no keyboard equivalent. Here's how the macro works: 1. He hovers the mouse pointer over the location the drag will start. (No need to click.) 2. He triggers the macro. 3. The macro waits five seconds while he moves the pointer to the target location. (Again, no need to click.) We started with a two second wait, but found it wasn't always enough time. If he's selecting text: the words between the start and target location get selected. If he's dragging an object: the object moves from the start location to the target location. Here's the script: Mouse Left Button Down Delay: 5000 milliseconds Mouse Left Button Up
  21. During the past year, has there been a Macro Express script that has made your life a little easier?
  22. The standard method to give keyboard input focus to the menu bar is to press either Alt or F10. If the menu bar (or ribbon) can be interacted with via keyboard, focus will jump there, and you will see it. Then menu items can be activated via arrow keys and/or "accelerator" keys. For example, for the File menu, pressing Alt or F10 will change the appearance of File: the "F" will be highlighted, or underlined. If this method works, a macro to navigate through menus can be simple. In pseudo code: Type F10 // Activate the menubar Type F // Choose the _F_ile menu Type A // Choose Save _A_s Sometimes you will need to insert a short delay between certain steps. 100 to 200 milliseconds is usually enough.
×
×
  • Create New...