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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.06.2011, 16:04   #1
Irzhi
 
Регистрация: 15.06.2011
Сообщений: 4
По умолчанию Текст "Задом наперед"

Есть некая программа занимающаяся конвертацией текста из AutoCad в Excel. Делает все отлично, но т.к. весрия триальная она умышленно символы всех ячеек рандомной строки переписывает задом наперед. [I]Пример:Скажем есть тублица 3х4:

10 Текст Arial
20 Текст Calibri
03 тскеТ semiT
40 Текст Romans


Символы каждой ячейки третьей строки выстроены задом наперед.

Нужно написать макрос чтобы это лечить. Думаю удобно будет выделять первую ячейку больной строки (в строке 8 больных ячеек в моем случае). И по нажатию хот-кея выполнялся макрос который бы лечил первые 8 ячеек этой строки.

Помогите плз, это сильно упростит мне жизнь в дальнейшем.
Заранее спасибо-)))
Irzhi вне форума Ответить с цитированием
Старый 15.06.2011, 16:26   #2
EugeneS
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 472
По умолчанию

см. вложение, выделите первую ячейку "кривой" строки из восьми ячеек, в данном примере её значение "чай", и нажмите [Ctrl+g]
Вложения
Тип файла: zip StrReverse.zip (6.2 Кб, 19 просмотров)
EugeneS вне форума Ответить с цитированием
Старый 15.06.2011, 16:32   #3
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Сообщений: 6,856
По умолчанию

Вот весь код:
Код:
Private Sub Workbook_Open()
    Application.OnKey "^d", "ЭтаКнига.ТекстЗадомНаперед"
End Sub

Sub ТекстЗадомНаперед()
    Dim cell As Range, ra As Range: Application.ScreenUpdating = False
    Set ra = Selection.Cells(1).Resize(, 8)
    For Each cell In ra.Cells: cell = StrReverse(cell.Text): Next cell
End Sub
Пример в файле: http://excelvba.ru/XL_Files/Sample__...__18-33-33.zip

Откройте файл, выделите ячейку, нажмите Ctrl + D
EducatedFool вне форума Ответить с цитированием
Старый 15.06.2011, 18:18   #4
Irzhi
 
Регистрация: 15.06.2011
Сообщений: 4
По умолчанию

Спасибо огромное-)))!!!!!!
Irzhi вне форума Ответить с цитированием
Старый 15.06.2011, 18:24   #5
Irzhi
 
Регистрация: 15.06.2011
Сообщений: 4
По умолчанию

EugeneS работает норм))) только он еще переставляет ячейки местами. Можно также но чтоб ячейки на месте оставались а текст в них менялся?-)))
Irzhi вне форума Ответить с цитированием
Старый 15.06.2011, 18:54   #6
EugeneS
Форумчанин
 
Регистрация: 06.08.2009
Сообщений: 472
По умолчанию

Irzhi, воспользуйтесь вариантом EducatedFool, заметил перестановку ячеек поздно, править не стал.
EugeneS вне форума Ответить с цитированием
Старый 15.06.2011, 18:55   #7
Irzhi
 
Регистрация: 15.06.2011
Сообщений: 4
По умолчанию

Все ништяк. Спасибо всем)))) Разобрался-))))))) Вы очень облегчили мне жисть)
Irzhi вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как заменить жирний текст "тис. грн." на обычний текст "тис. грн." Jaroslav Microsoft Office Word 2 01.09.2010 18:09
Напечатать текст, удалив из него все цифры и знаки "+" или "–". Язык С++. KaylasMKTY Помощь студентам 8 07.03.2010 21:35
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
Помогите сделать программу c выводом строки задом наперед(Pascal) Batman10000 Помощь студентам 2 14.12.2008 17:54