Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.78/41: Рейтинг темы: голосов - 41, средняя оценка - 4.78
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20

Макрос заменяющий букву "О" в тексте на формулу

04.12.2017, 23:51. Показов 8866. Ответов 43
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
РЕБЯТА! Нужна помощь! Нужен макрос, чтобы СУТЬ его была в том, чтобы заменял например букву "О" в тексте на формулу из этой буквы. Только одной буквы, а не целого слова. Так же чтоб не видно было выделения, очень нужно! С меня финансовая компенсация, даю слово!
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.12.2017, 23:51
Ответы с готовыми решениями:

Макрос Казнского заменяющий слова на формулу из этих же слов
Sub bb() Dim w As Range, i&, j& For i = ActiveDocument.Words.Count To 1 Step -1 Set w = ActiveDocument.Words(i) If w.Text...

Макрос заменяющий кнопку
Есть кнопка и в ней "полезный" код: DoCmd.RunSQL "Delete * from ", 0 DoCmd.SetWarnings False DoCmd.TransferSpreadsheet acImport,...

Макрос, заменяющий гласные буквы на символ @
Подскажите, в чем проблема? ERROR : Method or data member not found Sub replacement() Selection.WholeStoryWith ...

43
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
05.12.2017, 20:16
Лучший ответ Сообщение было отмечено Местный64 как решение

Решение

Студворк — интернет-сервис помощи студентам
Ну значит не надо выделять весь текст. ))
Дорабатывать нужно. я не расчитывал что ты его будеш выделять и не проверял в выделенном состоянии

Добавлено через 51 минуту
Проверяй, теперь можно выделять
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Sub Макрос1()
    Dim w
    With ActiveDocument.Range.Find
        .ClearFormatting
        .Text = "O"
        .Wrap = wdFindContinue
        .Replacement.Text = ""
        .Forward = True
        Do While .Execute = True
            Set w = .Parent.Duplicate
            With w.Fields.Add(Range:=w, Type:=wdFieldEmpty)
              .Code.Text = "eq [ЗАМЕНА]"
              .Code.Shading.BackgroundPatternColor = wdColorWhite
              .Code.HighlightColorIndex = wdWhite
            End With
        Loop
    End With
End Sub
0
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
06.12.2017, 17:27  [ТС]
fever brain, Привет) всё получилось) Но. Почему то меняются только английские О, а не русские, почему так?

Добавлено через 1 минуту
fever brain, хотя вроде всё, получилось)
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
06.12.2017, 17:31
Цитата Сообщение от Местный64 Посмотреть сообщение
Почему то меняются только английские О
Так и должно быть
в пятой строчке макроса замени .Text = "O" на Chr(206)

Найди этот кусок
Visual Basic
1
2
        .ClearFormatting
        .Text = Chr(206) ' Чтобы не путаться это русская буква О
или вставь уже с русской буквой .Text = "О" (дарю)
0
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
06.12.2017, 18:02  [ТС]
fever brain, ну до этого и додумался сам) кстати оригинальность естественно повышается, но желательно не весь документ обрабатывать.
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
06.12.2017, 19:26
Лучший ответ Сообщение было отмечено Местный64 как решение

Решение

вот!


Не перепутай макросы, а лучше удали старые их версии
Заменяет только выделенную часть, но можно и весь текст если кое что закоментировать

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Sub Замена_текста_на_fields_формулы()
    '
    'только выделенной части текста
    '
    Dim w As Range
    Set w = Selection.Range
    With w.Find
        .ClearFormatting
        .Text = "O"
        .Replacement.Text = ""
        .Wrap = wdFindContinue
        .Forward = True
        Do While .Execute = True
            If w.Start > Selection.End Then Exit Do 'Если нужен весь текст то закоментируй строку
            With w.Fields.Add(Range:=w, Type:=wdFieldEmpty)
              .Code.Text = "eq [ЗАМЕНА]"
              .Code.Shading.BackgroundPatternColor = wdColorWhite
              .Code.HighlightColorIndex = wdWhite
            End With
        Loop
    End With
End Sub
0
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
06.12.2017, 19:31  [ТС]
fever brain, спасибо ещё раз! А у тебя вообще есть какие нибудь ещё идеи по поводу обхода антиплагиата? Просто интересно твоё мнение и идеи. Потому что если честно, сейчас эта опухоль для студентов, да и даже для преподавателей.
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
06.12.2017, 19:36
Ну можно изменить синонимы в тексте

Добавлено через 2 минуты
Например темный меняем на черный, в падеже это будет так: темному -> черному
0
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
06.12.2017, 19:38  [ТС]
fever brain, да это всё старый век и затруднительное занятие, ведь мы не стихи изменяем. синонимы, рерайтинг и тому подобные вещи. А вот что-нибудь на этом уровне, что ты создал, это уже интереснее.
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
06.12.2017, 19:38
Цитата Сообщение от Местный64 Посмотреть сообщение
А вот что-нибудь на этом уровне, что ты создал, это уже интереснее.
Ну может быть, но это наверное не надолго
0
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
06.12.2017, 19:45  [ТС]
fever brain, да, так как скоро будет всё в PDF проверяться

Добавлено через 4 минуты
fever brain, К твоему макросу, бы добавить ещё один макрос, который бы убирал красные выделения(т.е ошибки). Его реально создать?
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
06.12.2017, 19:49
Все что в тексте есть, и все что можно править ручками (тоесть удалять, красить и тд) , то можно сделать и программно тоесть макросом
1
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
06.12.2017, 22:06  [ТС]
fever brain, Понял) интересно всё это очень)

Добавлено через 2 часа 3 минуты
fever brain, как с тобой тут можно связаться по личке? или по почте или в вк? Хочу с тобой кое о чём поговорить, появилась тема и мне она очень интересна стала, думаю это станет интересно и тебе
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
06.12.2017, 22:21
Цитата Сообщение от Местный64 Посмотреть сообщение
появилась тема и мне она очень интересна стала, думаю это станет интересно и тебе
Все может быть.
Сам то ты не можешь сейчас в личку писать, у тебя прав мало, но подпись то ты мою видишь ?

_______________________
подпись... бла-бла-бла...
0
0 / 0 / 0
Регистрация: 04.12.2017
Сообщений: 20
06.12.2017, 22:22  [ТС]
fever brain, спасибо, сейчас на почту отправлю
0
0 / 0 / 0
Регистрация: 03.04.2017
Сообщений: 4
12.12.2017, 23:00
Есть кто сможет в итог мне тоже интересно суть надо чтоб не одно О изменилось а по всему тексту эти О изменились и были не формулой, визульно так же чтоб выглядело, символ иличто то но не эта . просто из имеющихся вворде и др языков н канает
0
oh my god
 Аватар для fever brain
1456 / 796 / 161
Регистрация: 05.01.2016
Сообщений: 2,307
Записей в блоге: 8
14.12.2017, 21:56
Есть такой способ

Добавлено через 8 минут
Я могу хоть каждое слово сменить, хоть каждое второе, третее и тд
идея заменить букву на формулу провальная

и это не сработает, зато я знаю что сработает
0
1 / 1 / 0
Регистрация: 03.01.2016
Сообщений: 21
18.12.2017, 09:08
Цитата Сообщение от fever brain Посмотреть сообщение
зато я знаю что сработает
Что?
0
0 / 0 / 0
Регистрация: 31.03.2019
Сообщений: 4
31.03.2019, 19:11
Ребят, подскажите пожалуйста, куда нужно написать или вставить этот макрос, чтобы всё сработало?
Очень Вас прошу, помогите
0
3 / 3 / 0
Регистрация: 06.03.2019
Сообщений: 40
31.03.2019, 19:35
В параметрах включи настроить ленту и добавь Разработчик. Там увидишь Visiual Basic. Далее Insert -> Module. Появится чистое поле. Вот туда и вставляешь код. Далее на Разработчике жмакаешь Макросы и находишь макрос который скопировал. В данном случае Замена_текста_на_fields_формулы.
0
0 / 0 / 0
Регистрация: 31.03.2019
Сообщений: 4
21.04.2019, 12:25
попробовал воспользоваться макросом, он изменяет в выделенном тексте букву "О" на слово [ЗАМЕНА], а как сделать так чтобы на формулу то менял?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.04.2019, 12:25
Помогаю со студенческими работами здесь

Создать в Word макрос заменяющий пять идущих подряд пробелов символом табуляции
Помогите выполнить данное задание...:-[ Задание: Создать в Word макрос заменяющий пять идущих подряд пробелов символом табуля-ции, если...

определить в тексте все слова начинающиеся на букву т и заканчивающиеся на букву а
Помогите плиз

В тексте поменять букву а, на букву о, использовать компонент Мемо
В тексте поменять букву а, на букву о, использовать компонент Мемо

Заменить вторую букву в сочетании «ии» на букву «е» во всем тексте
Дан текст. Заменить вторую букву в сочетании «ии» на букву «е» во всем тексте.

В тексте поменять букву а, на букву о
В тексте поменять букву а, на букву о, использовать компонент Мемо


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
Благородство как наказание
Maks 24.04.2026
У хорошего человека отношения с женщинами всегда складываются трудно. А я человек хороший. Заявляю без тени смущения, потому что гордиться тут нечем. От хорошего человека ждут соответствующего. . .
Валидация и контроль данных табличной части документа перед записью
Maks 22.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в КА2. Задача: контроль и валидация данных табличной части документа перед записью с учетом регламента компании. . .
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2. Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом. В. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru