Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Другие темы раздела
VBA Оптимизировать работу макроса так, чтобы не происходило моргания формы или листа https://www.cyberforum.ru/ vba/ thread1260700.html
Есть макрос, который в зависимости от названия столбцов формирует ListBox с чекбоксами. При изменении чекбокса, скрывается или отображается соответствующий столбец. Сделал отображение/скрытие групп...
Исправить макрос так, чтобы он не удалял нужные данные VBA
Здравствуйте, этот макрос удаляет также и значения столбика "А". Как этого избежать? Dim b As Range Set b = .Find(, , xlValues, xlWhole) Do Until b Is Nothing ...
VBA Вычислить сумму членов степенного ряда, не используя оператор возведения в степень
дано x^2-x^4+x^6-x^8+..-x^20 создать функцию в visual basic, запрешещено использовать степень в и if
VBA Как удалить первую и последнию цифру из числа? Например, было 287543, стало 8754 https://www.cyberforum.ru/ vba/ thread1260484.html
VBA Как залить рабочую область фоновым цветом? https://www.cyberforum.ru/ vba/ thread1260463.html
Здравствуйте, каким образом можно ограничить размер листа, например (A1:AQ5000)? Чтобы не было больше ни строк, ни столбцов? Хочу рабочую область фоном залить. Весь лист заливается, вес файла слишком...
VBA Можно ли отобразить линии сетки в ListBox?
Здравствуйте, можно-ли в ListBox отображать вертикальные и горизонтальные линии (полосы)?
VBA Можно ли отобразить форму так, чтобы при этом иметь возможность прокрутки листа?
Здравствуйте, можно-ли, при вызванной на экран форме VBA, сделать так, чтобы работал скроллинг листа?
VBA Скопировать диапазон ячеек, в котором значения первого столбца равны искомому значению, в другую таблицу Здравствуйте, как скопировать диапазон по искомому значению. И как просто выделить его? Пример во вложении. https://www.cyberforum.ru/ vba/ thread1260457.html
VBA Очистить диапазон ячеек, в котором значения первого столбца равны искомому значению https://www.cyberforum.ru/ vba/ thread1260455.html
Здравствуйте, помогите избавиться от лишних действий. Пример во вложении.
VBA Записать число 123 - "сто двадцать три" (сумма прописью) Вот задача: Дано целое число в диапазоне 100–999. Вывести строку-описание данного числа, например: 256 — «двести пятьдесят шесть», 814 — «во- семьсот четырнадцать». Нужно используя функцию Select... https://www.cyberforum.ru/ vba/ thread1260087.html
Заблокирован
22.09.2014, 23:33 0

Найти либо те слова в тексте, в которых есть все буквы определенного слова, либо те, в которых нет ни одной

22.09.2014, 23:33. Просмотров 1174. Ответов 3
Метки (Все метки)

Ответ

Цитата Сообщение от Hunter13ua Посмотреть сообщение
Здесь же даже не могу понять как обратиться к символам слова и как разбить строку на слов
Visual Basic
1
2
3
4
arr=Split("Два слова")
msgbox arr(0)
msgbox arr(1)
msgbox mid(arr(0),3,1) 'Возвратит 3-й символ первого слова
Добавлено через 3 минуты
По умолчанию функция Split разделяет слова на пробелы..
но можно использовать и свой разделитель

arr=Split("Два/слова","/")

Добавлено через 3 минуты
На байсике, можно сделать абсолютно всё..
вот пример разбития на слова

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Option Explicit
Const edn = "ноль один два три четыре пять шесть семь восемь девять"
Const ndc = "одиннадцать двенадцать тринадцать четырнадцать пятнадцать шестнадцать семнадцать восемнадцать девятнадцать"
Const des = "десять двадцать тридцать сорок пятьдесят шестьдесят семьдесят восемьдесят девяносто"
Const sot = "сто двести триста четыреста пятьсот шестьсот семьсот восемьсот девятьсот"
Const tsh = "тысяча тысячи тысяч", mln = "миллион миллиона миллионов", mrd = "миллиард миллиарда миллиардов"
Const valuteRub = "рубль рубля рублей", valuteKop = "копейка копейки копеек"
Dim s$, f&, Fltr$, Kop$
Function SumProp$(ByVal Expression As Double, Optional ByVal val$ = valuteRub, Optional rec&)
    Const p = " ", z = ", ":  Dim s$
    If Expression <> Fix(Expression) Then
        'для вывода инфы копейки округляются до 2-х знаков после запятой
        'например: 0,3 = 30 копеек // 0,03 = три копейки
        Kop = Mid$(Expression, InStr(1, Expression, ",") + 1, 2)
        Kop = Kop & String(2 - Len(Kop), 48)
        Kop = z & SumProp(Kop, valuteKop, rec + 1): Expression = Fix(Expression)
    End If: If Expression >= 2 ^ 31 Then MsgBox "Вы ввели очень большое число", vbInformation: Exit Function
    While Expression > 0
        Select Case Expression
        Case Is >= 10 ^ 9: s = s & SumProp(Fix(Expression \ 10 ^ 9), mrd, rec + 1): Expression = Expression Mod 10 ^ 9
        Case Is >= 10 ^ 6: s = s & SumProp(Expression \ 10 ^ 6, mln, rec + 1): Expression = Expression Mod 10 ^ 6
        Case Is >= 1000: s = s & SumProp(Expression \ 1000, tsh, rec + 1): Expression = Expression Mod 1000
        Case Is >= 100: s = s & Split(sot)(Expression \ 100 - 1) & p: Expression = Expression Mod 100
        Case 10, Is >= 20: s = s & Split(des)(Expression \ 10 - 1) & p: Expression = Expression Mod 10
        Case 11 To 19: s = s & Split(ndc)(Expression - 11) & p: Expression = -Expression
        Case Is < 10: s = s & Split(edn)(Expression) & p: Expression = -Expression
        End Select
    Wend
    If Len(s) Then
        Expression = Abs(Expression)
        Select Case Expression
        Case 1: s = s & Split(val)(0) & IIf(rec And val <> valuteKop, z, "")
        Case 2, 3, 4: s = s & Split(val)(1) & IIf(rec And val <> valuteKop, z, "")
        Case Else: s = s & Split(val)(2) & IIf(rec And val <> valuteKop, z, "")
        End Select: Select Case val
        Case tsh, valuteKop 'исключение, тысяча и копейка в женском роде
            s = Replace(s, "один ", "одна ")
            s = Replace(s, "два ", "две ")
        End Select
    Else: Kop = Trim$(Mid$(Kop, 2))
    End If
    If rec = 0 Then s = s & Kop: Kop = ""
    SumProp = LCase(s): SumProp = UCase(Left$(SumProp, 1)) & Mid$(SumProp, 2)
End Function
Добавлено через 9 минут
Или вот например, я проверил можно ли на VBA сделать браузер
https://www.cyberforum.ru/post6530972.html
собрал за 15 мин

Вернуться к обсуждению:
Найти либо те слова в тексте, в которых есть все буквы определенного слова, либо те, в которых нет ни одной
1
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.09.2014, 23:33

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Определите слова, в которых нет хотя бы одной буквы из слова-образца
Вот, собственно, задача:&quot;Вводится слово-образец. Затем вводится список слов (не более 100)....

Найти все абзацы текста, в которых нет определённого слова
Привет всем! Хочу написать регулярное выражение которое находит все абзацы в которых НЕТ...

Найти в тексте все слова, буквы в которых упорядочены по алфавиту.
Помогите пожалуйста с программкой на С++, сама не справляюсь. &quot;В данном тексте найти все слова,...

Найти слова четной длины, у которых все буквы из первой половины слова встречаются во второй половине слова
Пожалуйста, помогите написать программу. Вот условие: Дана последовательность символов,...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.