Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.04.2010, 16:02   #1
ksar7
 
Регистрация: 23.09.2007
Сообщений: 5
По умолчанию Обратная последовательность букв

Доброго времени суток, уважаемые программеры (подмазался )

Стратегическая задача, не знаю даже как сформулировать, в общем надо сделать так...
например - вбиваю в excel цифры 123456 - при помощи макроса или еще как нить сделать обратную последовательность, то есть - 654321

искал много, гуглил, нашел макрос но он делает все в отдельном окне, а НАДО ЧТОБ ИЗ СТРОЧКИ БРАЛ И В СТРОЧКУ ВСТАВЛЯЛ.. помогите пожалуйста,

Sub perevorot_slov()
predlogenie = InputBox("Введите предложение")
slova = Split(predlogenie, " ")
temp = ""

If Right(predlogenie, 1) = "." Then
MsgBox ("Уберите точку в конце предложения, иначе я работать не буду ")
Exit Sub
End If

For I = 0 To UBound(slova)
For j = 1 To Len(slova(I))
temp = temp & Mid(slova(I), Len(slova(I)) + 1 - j, 1)
Next j
slova(I) = temp
temp = ""
Next I
predlogenie_new = slova(0)
For I = 1 To UBound(slova)
predlogenie_new = predlogenie_new & " " & slova(I)
Next I
MsgBox (predlogenie_new)

End Sub
ksar7 вне форума Ответить с цитированием
Старый 22.04.2010, 16:10   #2
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Функция пользователя:
Код:
Function Reverse_Word(sWord As String)
Reverse_Word = StrReverse(sWord)
End Function
Предвидя вопрос: используется следующим образом. Код вставляется в обычный модуль, в любой ячейке листа пишите:
=Reverse_Word(B2)
где B2 - ссылка на ячейку со словом, которое надо перевернуть.


Еще можете посмотреть здесь. Я приводил пример без макросов, но имеет свои минусы.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru

Последний раз редактировалось The_Prist; 22.04.2010 в 16:15.
The_Prist вне форума Ответить с цитированием
Старый 22.04.2010, 16:11   #3
ksar7
 
Регистрация: 23.09.2007
Сообщений: 5
По умолчанию

Цитата:
Сообщение от The_Prist Посмотреть сообщение
Функция пользователя:
Код:
Function Reverse_Word(sWord As String)
Reverse_Word = StrReverse(sWord)
End Function
это куда вставить надо. я вообще не бум-бум... можно объяснить либо сразу имеющийся текст исправить )
ksar7 вне форума Ответить с цитированием
Старый 22.04.2010, 16:14   #4
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

А если так попробовать

Код:
MsgBox (StrReverse("123456789"))
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 22.04.2010, 16:14   #5
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Цитата:
Сообщение от ksar7 Посмотреть сообщение
это куда вставить надо. я вообще не бум-бум... можно объяснить либо сразу имеющийся текст исправить )
Читай выше - жирным выделил.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 22.04.2010, 17:53   #6
ksar7
 
Регистрация: 23.09.2007
Сообщений: 5
По умолчанию

Цитата:
Сообщение от The_Prist Посмотреть сообщение
Читай выше - жирным выделил.
извени конечно, это работает так, типа вставляю в ячейку excel - =Reverse_Word(B2) и в В2 списываю что хочу перевернуть, а там где вставил =Reverse_Word(B2) появится перевернутое, и макрос что я тут втавлял типа вообще не нужен, нужно вместо него вписать твоё -
Function Reverse_Word(sWord As String)
Reverse_Word = StrReverse(sWord)
End Function
ksar7 вне форума Ответить с цитированием
Старый 22.04.2010, 18:11   #7
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Цитата:
Сообщение от ksar7 Посмотреть сообщение
макрос что я тут втавлял типа вообще не нужен, нужно вместо него вписать твоё -
Function Reverse_Word(sWord As String)
Reverse_Word = StrReverse(sWord)
End Function
Да, так оно и есть.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 23.04.2010, 11:59   #8
ksar7
 
Регистрация: 23.09.2007
Сообщений: 5
Хорошо

Цитата:
Сообщение от The_Prist Посмотреть сообщение
Да, так оно и есть.
Большое спасибо, помогло... при первой же возможности... отблагодарю... кашиль правильный?
ksar7 вне форума Ответить с цитированием
Старый 23.04.2010, 12:12   #9
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Цитата:
Сообщение от ksar7 Посмотреть сообщение
кашиль правильный?
Да. Оба правильные.
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 23.04.2010, 15:13   #10
ksar7
 
Регистрация: 23.09.2007
Сообщений: 5
По умолчанию

Цитата:
Сообщение от The_Prist Посмотреть сообщение
Да. Оба правильные.
не обещаю сразу. но как только, так кину
ksar7 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вводится последовательность из семи чисел или букв Dj_DeVaIs Помощь студентам 2 15.04.2010 18:09
Обратная матрица Шахрия Помощь студентам 1 26.10.2009 17:28
Обратная матрица Nox_uf Помощь студентам 1 23.09.2009 16:11
обратная матрица=) PrincEssa91 Паскаль, Turbo Pascal, PascalABC.NET 0 23.05.2009 15:59
Обратная связь Oliany PHP 1 06.05.2007 23:40