|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.12.2010, 17:24 | #1 |
Пользователь
Регистрация: 06.12.2010
Сообщений: 26
|
Строки.(решение есть работающие, но есть 1 но(((
Собственно говоря написал Макрос с горем по полам для перестановки Первого и последнего слова. Т.е поменять местами первое и последнее слово. Сегодня узнал от препода что слова могут быть не только наборы букв,но и цифры (фыы2312 2325DFGA55 9999 1111аrt 22222)
Как засунуть в мой макрос что бы цифры тоже считал? И можно ли его упростить ибо он меня пугает. Private Sub DoIt_Click() Dim stroka As String Dim LeftPosition As Integer Dim RightPosition As Integer stroka = TB_S.Text LeftPosition = 1 Do While LeftPosition <= Len(stroka) If Mid(stroka, LeftPosition, 1) = " " Then Exit Do Else LeftPosition = LeftPosition + 1 Loop RightPosition = Len(stroka) Do While RightPosition >= 0 If Mid(stroka, RightPosition, 1) = " " Then Exit Do Else RightPosition = RightPosition - 1 Loop TB_S.Text = Right(stroka, Len(stroka) - RightPosition) + Mid(stroka, LeftPosition, RightPosition - LeftPosition + 1) + Left(stroka, LeftPosition - 1) End Sub Последний раз редактировалось Bombastick; 27.12.2010 в 17:44. |
27.12.2010, 19:08 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
а Ваш макрос что делает?
выполните это: Код:
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
27.12.2010, 22:37 | #3 | |
Форумчанин
Регистрация: 02.02.2009
Сообщений: 842
|
Цитата:
Код:
С уважением, Алексей.
|
|
27.12.2010, 22:56 | #4 | |
Форумчанин
Регистрация: 02.02.2009
Сообщений: 842
|
Цитата:
/**/ stroka='фыы2312 2325DFGA55 9999 1111аrt 22222' stroka2=word(stroka,words(stroka))' 'SUBWORD(stroka,2,words(stroka)-2)' 'word(stroka,1) say stroka2 Надо бы аналог SUBWORD в VBA написать... :))
С уважением, Алексей.
|
|
27.12.2010, 23:10 | #5 |
Пользователь
Регистрация: 06.12.2010
Сообщений: 26
|
Дело в том что нужно что бы она читала с TB_X (запускаю макрос ввожу в TB_X фразу, любую даже с цифрами, и оно должно поменять местами первое и последнее слово, а у меня меняет только слова с буквенным набором, а цифры не меняет((
|
27.12.2010, 23:43 | #6 |
Форумчанин
Регистрация: 17.07.2009
Сообщений: 519
|
Если не нужно сохранять лидирующие пробелы
Код:
|
28.12.2010, 01:11 | #7 |
Пользователь
Регистрация: 06.12.2010
Сообщений: 26
|
Всем спасибо) нашел ошибку, там просто нужно было отсечь пробелы впереди и в конце. До этого если перед словом стоял пробел то он как бы их местами заменял)) как то так)
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Даны строки S и S0. Удалить из строки S все подстроки, совпадающие с S0 . Если совпадающих подстрок нет, | Шпунюся | Помощь студентам | 1 | 16.12.2010 21:02 |
Создание пустой строки и копирование в неё содержимое предыдущей строки | Gvaridos | Microsoft Office Excel | 2 | 29.10.2010 13:33 |
Определять максимальную длину той части строки s, которая не содержит символы из строки s1. | Александе еть я | Общие вопросы C/C++ | 5 | 13.04.2010 20:54 |
Перенести символа с начала строки в место перед запятой этой же строки. | Zhiltsov | Microsoft Office Excel | 4 | 05.06.2009 13:10 |