Показать полную графическую версию : VBA WORD При наборе текста, автоматическая вставка изображения HELP!
fearnewstyle
12-11-2011, 22:41
Здравствуйте дорогие форумчане. Подскажите пожалуйста, возможно ли сделать так, что бы макрос в ворде 2007 запускался автоматически при вбивании текста в определенный столбец в таблице word? То есть, в таблице имеется 2 столбца и мне нужно, чтобы при вводе текста(любого) в первый столбец, выполнялась автоматическая вставка рисунка в другой столбец. Буду очень благодарен за помощь!!!(макрос должен запускаться без сочетания клавиш или какой-либо кнопки, возможно ли это?)
Удалось написать вот такой набросок кода и то при сочетании определенных клавиш, а нужно, что бы выполнялся автоматически:
Sub picture()
Selection.MoveLeft Unit:=wdCharacter, Count:=1
If Selection.Text = "s" Then
Selection.MoveRight Unit:=wdCell
Selection.InlineShapes.AddPicture FileName:= _
"E:\Documents and Settings\FEAR\Мои документы\знак.jpg", _
LinkToFile:=False, SaveWithDocument:=True
End If
End Sub
fearnewstyle, во-первых, Вы не туда копаете. Во-вторых, судя по Events (http://msdn.microsoft.com/en-us/library/ff841714.aspx), иных событий, позволяющих отслеживать перемещение точки вставки в документе, кроме WindowSelectionChange Event (http://msdn.microsoft.com/en-us/library/ff192791.aspx), не появилось. Однако суть проблемы как раз в том, что данное событие не генерируется при вводе текста, ибо точка вставки при сём не меняется. Потому именно при вводе — не получится. После ввода при любой попытке смены позиции ввода — да, можно.
Однако, для чего нужны такие потребности? Вы не написали, чем именно не устраивает «сочетание клавиш или какая-либо кнопка».
fearnewstyle
13-11-2011, 12:28
Iska, спасибо за подсказку. Вставка картинки после ввода текста, при попытке смены позиции ввода - тоже подходит. Дело в том, что у меня на работе люди ленивые и никаких кнопок или сочетаний клавиш не хотят нажимать, поэтому нужно автоматизировать процесс, в конце ввода текста в определенном столбике - в другой автоматически вставлялась картинка. Реально ли сделать такой макрос без сочетания клавиш или кнопок?
в конце ввода текста »
Не получится. Событие WindowSelectionChange Event (http://msdn.microsoft.com/en-us/library/ff192791.aspx) срабатывает при смене позиции курсора ввода (точки вставки) в тексте. Да и как определить «конец ввода текста»?!
Ну, пример-то я Вам приведу: 72444. Но Вы увидите, что сие получается чересчур громоздко, накладно и не всегда работает так, как хотелось бы.
Дело в том, что у меня на работе люди ленивые и никаких кнопок или сочетаний клавиш не хотят нажимать, »
Данные вопросы должны решаться именно организационным путём, а не программным.
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.