Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
VBA Слетает форматирование текста при выполнение макроса в Ворде https://www.cyberforum.ru/ vba/ thread396393.html
Код такой (корявенький конечно...:-Sub txt() x = ActiveDocument.Paragraphs.Count For i = 2 To x With ActiveDocument.Paragraphs(i).Range s = .Text t = Right(s, 2) a = Asc(t) If (a = 45) Then .Text = Left$(s, Len(s) - 2) i = i - 1
Отображение извлеченных данных из БД VBA
В общем извлекаю данные с сервера, скрипт-запросы, код проги, все верно. Но результат получается с дополнительным символом. Отображается как квадратик, я предполагаю что это символ перехода строк. Подскажите как избавится. Dim fil As ADODB.Connection Dim read As New ADODB.Recordset fil.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;" & _ "Persist Security...
VBA На основе значений выделенного диапазона сформировать значения нового диапазона https://www.cyberforum.ru/ vba/ thread396325.html
На основе значений выделенного диапазона сформировать значения нового диапазона по указанному в задании правилу. Новые значения необходимо поместить справа или снизу от выделенного диапазона. Заданное число и границы заданного интервала определить как константы. Задача: Значения диапазона, модуль которых больше заданного числа, разделить на заданное число, остальные значения оставить без...
VBA Поиск совпадений на разных листах и столбцах Здравствуйте. Вижу здесь многим помогают добрые люди. Надеюсь, помогут и мне, т.к. опыта работы с VBA не имеется . Есть вот такая задача: Нужно чтобы макрос с листа "products" брал артикул и искал его в листе "catalog". Когда находил менял цену (столбик "Цена" в "products") на свою, а те позиции, что не нашел по артикулу, добавлял в "catalog", в самый верх (между первой и второй строкой,... https://www.cyberforum.ru/ vba/ thread395972.html
Максимальное, минимальное значение и порядковый номер последовательности VBA
водится последовательность чисел, нужно найти макс. и мин. значение и порядковый номер(не считаются почему то...) Public Sub Digit() Dim n, s, k, sr, p, max, min, n1, n2, l As Double s = 0 k = 0 p = 1 l = 0 C = 0 n2 = 0 n1 = 0
VBA В зависимости от введенного пароля открыть определенную форму https://www.cyberforum.ru/ vba/ thread395635.html
Здравствуйте, Есть форма для ввода пароля. существует три пароля (111, 222, 333) и каждый из них открывает определенную форму. Private Sub Кнопка3_Click() Dim Password As Variant, entPassword As Variant m1: Password = "111" Password2 = "222" Password3 = "333" If entPassword = Password Then
VBA Не могу вставить имя закладки https://www.cyberforum.ru/ vba/ thread395593.html
Вот код программы Sub Макрос1() ' ' Макрос1 Макрос ' ' Set fd = Application.FileDialog(msoFileDialogFilePicker) With fd .ButtonName = "Select" .AllowMultiSelect = False
Разработать программное средство для действия с матрицами различной размерности VBA
нужно разработать программное средство для действия с матрицами различной размерности(задаваемой пользователем) Предусмотреть сложение, вычитание, умножение, транспонирование, обращения, сокращения, сохранение в файл и загрузки из него
VBA Разработать приложение для приема телеграмм доброе время суток помогите написать программку на VBA в экселе.: Разработать приложение для приема телеграмм. Фиксируется информация: фамилия заказчика, текст телеграммы, срочность, дополнительное оформление бланка, адрес доставки. Рассчитывается общая стоимость в зависимости от количества слов, срочности и оформления. при возможности киньте на почту https://www.cyberforum.ru/ vba/ thread395342.html VBA Написать комментарии к коду обьясненя напишите с помощью знака ( ' ) в самой програме. Собственно задание: Преобразовать произвольную матрицу Q(m*n), расположив ее столбцы в порядке убывания сумм значений их элементов. Напечатать матрицу Q до и после преобразований, приведя против каждого столбца суммы значений элементов в них. Предусмотреть печать сообщений о номерах меняемых столбцов при каждой перестановке.... https://www.cyberforum.ru/ vba/ thread395320.html
Создание теста: как сделать счетчик правильных ответов VBA
Здравствуйте, прошу помощи в создании теста. Не знаю как сделать счетчик правильных ответов. Также вопрос, можно ли упростить как-нибудь?: Private Sub СохранитьИ_Click() If OptionButton1.Value = False And OptionButton2.Value = False And OptionButton3.Value = False And OptionButton4.Value = False Or OptionButton5.Value = False And OptionButton6.Value = False And OptionButton7.Value = False And...
VBA Экспорт данных из excel в access https://www.cyberforum.ru/ vba/ thread395095.html
Доброго времени суток друзья! Я знаю что данная тема не раз поднималась здесь, да и на многих других форумах тоже, но пользу для себя извлечь из тех ответов я так и не смог. Если не сложно, будьте добры, скиньте пожалуйста код в котором информация из 1й(cells(1,1)), 2й(cells(1,2)), 3й(cells(1,3)) ,4й(cells(1,4)) ячейки Excel листа, отправлялась бы в базу данных
5562 / 1368 / 150
Регистрация: 08.02.2009
Сообщений: 4,109
Записей в блоге: 30
01.12.2011, 23:10 0

Переставить местами слова с максимальной и минимальной длиной - VBA - Ответ 2236959

01.12.2011, 23:10. Показов 2206. Ответов 6
Метки (Все метки)

Ответ

Полчаса назад, после 2 часов борьбы, код заработал! Тема отличная, хочу сравнить с другими.

И наверно, идея использовать семейство Word была не лучшей — но зато удобно переставлять.
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
Sub SwapFirstTheLongestAndTheShortest()
'переставляет те первые слова в предложении Word, длина которых равна max и min
Dim min As Integer, minN As Integer, max As Integer, maxN As Integer
Dim N As Integer, minF As Integer, maxF As Integer, strWord As String
 
        max = 1:    maxF = 1    'задали максимум, покрывающий все вообразимые слова
        min = 100:  minF = 100  'так же и с минимумом: делаем его изначально большим
    
    With ActiveDocument.Sentences.First.Words   'работаем со словами 1-го предложения
        For N = 1 To .Count 'просматриваем слова с первого по последнее
        .Item(N).Select     'выделили N-е; но нас интересуют настоящие слова, из букв
        If Right(Selection, 1) = " " Then Selection.MoveLeft Extend:=wdExtend
                                'сняли выделение с правого пробела (это граница слова)
        minN = Len(Selection)
        If minN = 1 Then
            If Left(.Item(N), 1) Like "[A-zА-яЁё]" Then
                'выходим из цикла, если N-е слово состоит из 1 буквы - оно минимально
                min = 1: minF = N: Exit For
            Else
                GoTo NextN
            End If
        End If
        If minN < min Then min = minN: minF = N 'нашли (первый) минимум и номер слова
NextN:
        Next
                        MsgBox .Item(minF).Text, vbInformation, "1-е минимальное слово"
                        
        For N = 1 To .Count 'опять просматриваем слова - ищем первое максимальное
        .Item(N).Select
        If Right(Selection, 1) = " " Then Selection.MoveLeft Extend:=wdExtend
                                'сняли выделение с правого пробела (это граница слова)
        maxN = Len(Selection)
        If maxN > max Then max = maxN: maxF = N 'нашли (первый) максимум и номер слова
        Next
                        MsgBox .Item(maxF).Text, vbInformation, "1-е максимальное слово"
                        
        strWord = .Item(minF): .Item(minF) = .Item(maxF) & " ": .Item(maxF) = strWord
        'здесь можно ещё убрать лишние пробелы, но это уже слишком
    End With
End Sub


Вернуться к обсуждению:
Переставить местами слова с максимальной и минимальной длиной VBA
Миниатюры
Переставить местами слова с максимальной и минимальной длиной  
Изображения
  
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.12.2011, 23:10
Готовые ответы и решения:

Поменять местами слова с максимальной и минимальной длиной
Здравствуйте, нужно решение задачи: Поменять местами слова с максимальной и минимальной длиной при...

Поменять местами слова с максимальной и минимальной длиной при условии, что такие слова единственные
Поменять местами слова с максимальной и минимальной длиной при условии, что такие слова...

Поменять местами серии с минимальной и максимальной длиной
Задан целочисленный массив размером N. Поменять местами серии с минимальной и максимальной длиной....

Поменять местами серии массива с максимальной и минимальной длиной
Задан целочисленный массив размера N. Поменять местами серии с максимальной и минимальной длиной....

6
01.12.2011, 23:10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
01.12.2011, 23:10
Помогаю со студенческими работами здесь

Переставить местами слово с минимальной длиной с последним словом
Дана строка симолов, содержащая 6 слов разной длины. Переставить местами слово с минимальной...

Поменять в матрице слова с максимальной и минимальной длиной в первой строке
Напишите программу, которая заполняет с клавиатуры массив А(3,3) словами разного размера и меняет в...

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

В тексте переставить слова минимальной и максимальной длины
Вводится текст. В тексте переставить слова минимальной и максимальной длины. Конец ввода F1.

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru