#1
|
|||
|
|||
Calling for an action when typing a character
I need for a certain macro (which I have already written) to be called and executed each time I enter a space while typing my WORD document, i.e. when I press the spacebar.
I guess what I need is another previous macro, or a line of code somewhere. In EXCEL, I suppose, it could be some code for Worksheet_Change(ByVal Target As Range) beginning with “IF… then”. But in WORD? Thanks for any help ACA |
#2
|
||||
|
||||
Hi ACA,
Word has no 'space' event from which to trigger such a macro. If you describe what you're trying to achieve, perhaps another approach can be suggested.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#3
|
|||
|
|||
Thank you, Paul. What I’m trying to achieve is this:
That, while I’m typing my text in Word, an existing macro be called and executed each time I type in a given character as part of the text itself. If that is not possible in WORD (as it would be in EXCEL), I cannot think of another approach, for I know very little about the resources of VBA for WORD. But perhaps you yourself, knowing what those resources are, could suggest another possible way to achieve what I just explained I need. Would you be so kind? In any case, thanks very much for replying and for your help so far. ACA |
#4
|
|||
|
|||
Another hint:
For my purpose it will also do if the macro is called -not necessarily by the entering of a given character, -but also if it is triggered by some other event which is part of my typing in the text document in WORD, -like, say, every nth word entered, or every nth keystroke. Does that suggest any new possibilites? Thanks for just considering, anyway. ACA |
#5
|
||||
|
||||
Hi ACA,
It's still not clear what you're trying to achieve (ie what is the macro supposed to do). Depending on what your goal is, it might be achievable via Word's Autotext facility. You don't need any vba for this. Word's Autotext facility allows you to type a string and Word will automatically replace that with another string (which could be a whole page of text, for example) and/or graphics. See Word's help file for details.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#6
|
|||
|
|||
Thank you Paul.
No, it’s not something Word’s AutoText can do. It’s this: I do translations. For that I keep two Word documents open, Doc.1 (on which I type my translation) and Doc.2 (with the original). My macro does this: - It goes to the original text, picks a chunk, say15 words, and pastes that on my doc.1. - When I’ve translated that chunk (by overtyping the original) I execute the macro again and it goes, picks the next 15 words and adds them to my doc.1, and so on. - Besides, on the original Doc.2, it turns a different color the part of the text already done, so if I need to check something it is easy for my eyes to fall near the spot I’ve reached. Here’s the code: Code:
Windows("Doc.2").Activate Selection.MoveRight Unit:=wdWord, Count:=15, Extend:=wdExtend Selection.Copy Selection.Font.Color = wdColorBlue Selection.MoveRight Unit:=wdCharacter, Count:=1 Windows("Doc.1").Activate Selection.PasteAndFormat (wdPasteDefault) Selection.MoveLeft Unit:=wdWord, Count:=15 Overtype = Overtype Thank you again for your interest. ACA |
#7
|
||||
|
||||
Hi ACA,
You could possibly use a macro like the following. It goes though all sentences in the document, asking for you to translate them. If you edit or leave a given sentence alone, the next sentence is selected. Pressing cancel exits the macro. Code:
Sub Translation_Assistant() Dim Rng As Range, Rslt With ActiveDocument For Each Rng In .Sentences With Rng .MoveEndWhile Cset:=" ", Count:=wdBackward .End = .End - 1 .Select If .Style <> "Trans" Then Rslt = InputBox("Please translate this sentence.", "Sentence translation", .Text) If Rslt = vbNullString Then Exit Sub .Text = Rslt .Style = "Trans" End If End With Next End With End Sub
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#8
|
|||
|
|||
Paul, I tank you very warmly for your effort and your insistence in following my query to this point.
Your approach is very new to me, but clever and knowledgeable, and works all right. Thanks again. Bless you. Aca |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
How to link an action on one slide on a powerpoint with the same action on another | slevinmj | PowerPoint | 0 | 02-24-2011 05:38 AM |
Re-Calling Sent Email | freschij | Outlook | 1 | 12-06-2010 09:16 PM |
Change Action Setting Path | gskelton | PowerPoint | 0 | 02-27-2010 03:20 PM |
calling images with a button | sammer021486 | PowerPoint | 0 | 01-13-2010 08:24 AM |
Highlighted Selection on Action Settings | mos7sad | PowerPoint | 0 | 10-12-2009 07:48 AM |