замена букв на соответствующие числа
|
|
lamak58 |
Дата: Вторник, 05.07.2016, 12:47 |
Сообщение № 1 |
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
20% ±
Excel 2007 | |
здравствуйте,снова обращаюсь за вашей помощью,старожилы есть значения в таком виде : № 51-81А № 51-83А № 52-82В № 52-71Г
как макросом поменять в них букву А на 1,В на 3,Б на 2 и т. п. ??
здравствуйте,снова обращаюсь за вашей помощью,старожилы есть значения в таком виде : № 51-81А № 51-83А № 52-82В № 52-71Г
как макросом поменять в них букву А на 1,В на 3,Б на 2 и т. п. ??lamak58
|
|
| Ответить
|
китин |
Дата: Вторник, 05.07.2016, 12:55 |
Сообщение № 2 |
|
Группа: Модераторы
Ранг: Экселист
Сообщений: 7015
Репутация:
1073
±
Замечаний:
0% ±
Excel 2007;2010;2016 | |
составить таблицу соответствия букв и цифр, разместить ее на листе файла Excel а сам файл приложить к вопросу
составить таблицу соответствия букв и цифр, разместить ее на листе файла Excel а сам файл приложить к вопросукитин
Не судите очень строго:я пытаюсь научиться ЯД 41001877306852
|
|
| Ответить
|
Pelena |
Дата: Вторник, 05.07.2016, 13:00 |
Сообщение № 3 |
|
Группа: Админы
Ранг: Местный житель
Сообщений: 19182
Репутация:
4420
±
Замечаний:
±
Excel 365 & Mac Excel | |
Можно попробовать КОДСИМВ() задействовать
Можно попробовать КОДСИМВ() задействоватьPelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816
|
|
| Ответить
|
abtextime |
Дата: Вторник, 05.07.2016, 13:14 |
Сообщение № 4 |
|
Группа: Проверенные
Ранг: Ветеран
Сообщений: 828
Репутация:
117
±
Замечаний:
0% ±
Excel 2010 | |
Миллион способов. Вот самый легкий лично для меня
[vba]Код Public Function N2L(S As String) As String
N2L = S
For i = 0 To 32 N2L = Replace(N2L, Chr(Asc("À") + i), i + 1) Next i
End Function [/vba]
UPD. Только название функции неправильное ... лучше L2N
Миллион способов. Вот самый легкий лично для меня
[vba]Код Public Function N2L(S As String) As String
N2L = S
For i = 0 To 32 N2L = Replace(N2L, Chr(Asc("À") + i), i + 1) Next i
End Function [/vba]
UPD. Только название функции неправильное ... лучше L2Nabtextime
Сообщение отредактировал abtextime - Вторник, 05.07.2016, 13:15 |
|
| Ответить
|
lamak58 |
Дата: Вторник, 05.07.2016, 15:49 |
Сообщение № 5 |
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
20% ±
Excel 2007 | |
таблица соответствия не пойдет, таких файлов много и они обновляются каждый день КОДСИМВ() - не подскажете как конкретно задействовать?
попробовал,не получилось .
вот приложил файл-образец. нужен код,который бы менял буквы на цифры только в ячейках вида "№ 51-41А "
таблица соответствия не пойдет, таких файлов много и они обновляются каждый день КОДСИМВ() - не подскажете как конкретно задействовать?
попробовал,не получилось .
вот приложил файл-образец. нужен код,который бы менял буквы на цифры только в ячейках вида "№ 51-41А "lamak58
К сообщению приложен файл:
_5-7-.xls
(34.5 Kb)
|
|
| Ответить
|
abtextime |
Дата: Вторник, 05.07.2016, 16:18 |
Сообщение № 6 |
|
Группа: Проверенные
Ранг: Ветеран
Сообщений: 828
Репутация:
117
±
Замечаний:
0% ±
Excel 2010 | |
Запускайте макрос L2NSub
[vba]Код Public Function L2N(S As String) As String
L2N = S
For i = 0 To 32 CA = Chr(Asc("A") + i) L2N = Replace(L2N, Chr(Asc("A") + i), (i + 1) & "") Next i
End Function
Public Sub L2NSub()
For Each R In ActiveSheet.UsedRange R.Value = L2N(R.Value) Next
End Sub
[/vba]
Запускайте макрос L2NSub
[vba]Код Public Function L2N(S As String) As String
L2N = S
For i = 0 To 32 CA = Chr(Asc("A") + i) L2N = Replace(L2N, Chr(Asc("A") + i), (i + 1) & "") Next i
End Function
Public Sub L2NSub()
For Each R In ActiveSheet.UsedRange R.Value = L2N(R.Value) Next
End Sub
[/vba]abtextime
Сообщение отредактировал abtextime - Вторник, 05.07.2016, 16:19 |
|
| Ответить
|
lamak58 |
Дата: Вторник, 05.07.2016, 18:14 |
Сообщение № 7 |
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
20% ±
Excel 2007 | |
попробовал ваш файл,не работает.
попробовал ваш файл,не работает.lamak58
|
|
| Ответить
|
abtextime |
Дата: Вторник, 05.07.2016, 18:27 |
Сообщение № 8 |
|
Группа: Проверенные
Ранг: Ветеран
Сообщений: 828
Репутация:
117
±
Замечаний:
0% ±
Excel 2010 | |
Может, не тот файл вложил, смотрите
[vba]Код Public Function L2N(S As String) As String
L2N = S
For i = 0 To 32 CA = Chr(Asc("А") + i) L2N = Replace(L2N, Chr(Asc("А") + i), (i + 1) & "") Next i
End Function
Public Sub L2NSub()
For Each R In ActiveSheet.UsedRange R.Value = L2N(R.Value) Next
End Sub [/vba]
Может, не тот файл вложил, смотрите
[vba]Код Public Function L2N(S As String) As String
L2N = S
For i = 0 To 32 CA = Chr(Asc("А") + i) L2N = Replace(L2N, Chr(Asc("А") + i), (i + 1) & "") Next i
End Function
Public Sub L2NSub()
For Each R In ActiveSheet.UsedRange R.Value = L2N(R.Value) Next
End Sub [/vba]abtextime
Сообщение отредактировал abtextime - Вторник, 05.07.2016, 18:29 |
|
| Ответить
|
lamak58 |
Дата: Среда, 06.07.2016, 18:33 |
Сообщение № 9 |
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
20% ±
Excel 2007 | |
работает,но меняет буквы вообще везде где только видит
работает,но меняет буквы вообще везде где только видит lamak58
Сообщение отредактировал lamak58 - Среда, 06.07.2016, 18:35 |
|
| Ответить
|
abtextime |
Дата: Среда, 06.07.2016, 18:46 |
Сообщение № 10 |
|
Группа: Проверенные
Ранг: Ветеран
Сообщений: 828
Репутация:
117
±
Замечаний:
0% ±
Excel 2010 | |
меняет буквы вообще везде Критерий уточните - где надо буквы менять, где не надо. Может быть, только в тех ячейках, где первый символ "№" ?
Тогда так [vba]Код Public Function L2N(S As String) As String
L2N = S
For i = 0 To 32 CA = Chr(Asc("А") + i) L2N = Replace(L2N, Chr(Asc("А") + i), (i + 1) & "") Next i
End Function
Public Sub L2NSub()
For Each R In ActiveSheet.UsedRange If Left(R.Value, 1) = "№" Then R.Value = L2N(R.Value) Next
End Sub
[/vba]
меняет буквы вообще везде Критерий уточните - где надо буквы менять, где не надо. Может быть, только в тех ячейках, где первый символ "№" ?
Тогда так [vba]Код Public Function L2N(S As String) As String
L2N = S
For i = 0 To 32 CA = Chr(Asc("А") + i) L2N = Replace(L2N, Chr(Asc("А") + i), (i + 1) & "") Next i
End Function
Public Sub L2NSub()
For Each R In ActiveSheet.UsedRange If Left(R.Value, 1) = "№" Then R.Value = L2N(R.Value) Next
End Sub
[/vba]abtextime
|
|
| Ответить
|
lamak58 |
Дата: Четверг, 07.07.2016, 10:22 |
Сообщение № 11 |
|
Группа: Пользователи
Ранг: Новичок
Сообщений: 45
Репутация:
0
±
Замечаний:
20% ±
Excel 2007 | |
премного благодарен,работает как часы !
премного благодарен,работает как часы ! lamak58
|
|
| Ответить
|