Тема: поиск слов в выделенной части текста
Помогите пожалуйста сделать програмку которая б искала слово в выделенной части текста. Подчеркивала эти слова.
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → VBA → поиск слов в выделенной части текста
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Помогите пожалуйста сделать програмку которая б искала слово в выделенной части текста. Подчеркивала эти слова.
Я так думаю сначала надо посчитать количество слов по пробелам, затем сделать цикл от 1 до количества слов и в цикле в этом же проверять если это слово совпадает с заданным, то какие то действия......
Dim s() As String Private Sub Command1_Click() For i = 1 To Len(RichText1.Text) q = InStr(n, RichText1.Text, " ", vbTextCompare) If q > 1 Then ks = ks + 1: n = q + 1 Next i For i = 1 To ks If s(i) Like Text1 Then Text2.Text = "Fuck OFF!" Next i End Sub
Что то неполучается...В чем ошибка?
> Caps
Для того чтобы найти интересующие вас слова в тексте и, предположим, заменить их другими, подчеркнутыми, программа не нужна. Достаточно использовать команду _find или _properties.
Если вам непременно нужно решить задачу программным путем, то не мешало бы знать - какие виды текстовых примитивов используются?
Как могут располагаться искомые слова в тексте?
А вообщем, задача решается путем применения встроенной функции replace.
вот такое задание
Разработать приложение, позволяющее организовать поиск слов в выделенной части текста, совпадающих с шаблоном, введённым пользователем (с использованием оператора Like). Подчеркнуть эти слова. Приложение должно включать формы со сведениями о программе и об её создателе. Разработать панель инструментов и главное меню для своего приложения.
> Caps
Мне казалось, что вы разберетесь с функцией replace, ну и дальше дело пойдет само...
Раз так не произошло, то вот вам каркас программы, остальное нарастите самостоятельно:
Sub Find_Underline() ' Create the selection set Dim ssetObj As AcadSelectionSet Dim ss As AcadSelectionSets Set ss = ThisDrawing.SelectionSets On Error Resume Next ss.Item("SSET").Delete Set ssetObj = ss.Add("SSET") 'MsgBox Err.Number Dim gpCode(0) As Integer Dim dataValue(0) As Variant gpCode(0) = 0 dataValue(0) = "TEXT" Dim groupCode As Variant, dataCode As Variant groupCode = gpCode dataCode = dataValue ssetObj.SelectOnScreen groupCode, dataCode Dim MyText As String MyText = InputBox("Enter text for find") Dim UnderlineText As String UnderlineText = InputBox("Enter underlinetext for replace", , "%%u" & MyText) Dim vText As AcadText Dim Result As Boolean For Each vText In ssetObj Result = vText.TextString Like MyText If (Result) Then vText.TextString = UnderlineText End If Next vText End Sub
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → VBA → поиск слов в выделенной части текста
Форум работает на PunBB, при поддержке Informer Technologies, Inc