Страница: 1 |
Вопрос: сравнения текста в разных ячейках VBA Эксель | Добавлено: 08.05.08 17:13 |
Автор вопроса: ![]() |
Здравствуйте!
задача следующая: есть ячейка с адресом "ул. Красноармейская, 206" туда надо добавить индекс путем сравнения текста и копирования , ячейка с индексом выглядет так "Красноармейская ул - 344022", как видно порядок и синтаксис написания улице разный. незнаю с помощью чего проверить и потом вырезать индекс из ячейки. заранее спасибо! |
Ответы | Всего ответов: 6 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: ненавижу Вопросов: 40 Ответов: 477 |
Web-сайт: Профиль | Цитата | #1 | Добавлено: 08.05.08 20:40 |
Короче:
ул. Красноармейская, 206 Красноармейская ул - 344022 Если Индекс это циферка в конце, то вот так его можно получить tmpStr = значение_ячейки Index = right$(len(tmpstr)-instrrev(tmpstr," " ![]() |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: ненавижу Вопросов: 40 Ответов: 477 |
Web-сайт: Профиль | Цитата | #2 | Добавлено: 08.05.08 20:44 |
Если хочешь убедиться, что в ячейке есть слово "Красноармейская", то
If Instr(значение_ячейки,"Красноармейская" ![]() есть_красноармейская Else: нет_красноармейской End If |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 5 Ответов: 25 |
Профиль | Цитата | #3 | Добавлено: 09.05.08 10:56 |
скажите плиз как сравнить все ячейки из одной строки с каждой ячейкой в другой строке и например выделить цветом
со столбцами понятно Sub Macro1() For z = 1 To 100 If Range("a" & z) <> Range("b" & z) Then Range("a" & z).Select Selection.Font.ColorIndex = 3 Else Range("a" & z) = Range("b" & z) Range("a" & z).Select Selection.Font.ColorIndex = 5 End If Next End Sub а как правилно для строк написать код? |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: ненавижу Вопросов: 40 Ответов: 477 |
Web-сайт: Профиль | Цитата | #4 | Добавлено: 09.05.08 14:44 |
со столбцами понятно
страшная картина, так понятнее Sub Macro1() Dim Столбец As Integer, Номер_проверяемой_строки As Integer, Номер_Листа As Integer Номер_Листа = 1 Номер_проверяемой_строки = 1 With Sheets(Номер_Листа).UsedRange For Столбец = .Column To .Columns.Count If Cells(Номер_проверяемой_строки, Столбец) = Cells(Номер_проверяемой_строки + 1, Столбец) Then Cells(Номер_проверяемой_строки, Столбец).Font.ColorIndex = 5 Else: Cells(Номер_проверяемой_строки, Столбец).Font.ColorIndex = 3 End If Next End With End Sub Строка в ячейке, или цифра, или дата, для этого кода не имеет значения. а как правилно для строк написать код?
Не понял, нужно каждую следующую строку сверять с предыдущей по столбцам? |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 5 Ответов: 25 |
Профиль | Цитата | #5 | Добавлено: 09.05.08 18:09 |
большое спасибо как раз то , на что я хотел получить ответ |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() Вопросов: 5 Ответов: 25 |
Профиль | Цитата | #6 | Добавлено: 14.05.08 22:08 |
Sub Macro1()
![]() sorry Номер_проверяемой_строки As Integer, Номер_Листа As Integer Номер_Листа = 1 Номер_проверяемой_строки = 1 With Sheets(Номер_Листа).UsedRange For Столбец = .Column To .Columns.Count if Cells(Номер_проверяемой_строки, Столбец).Font.ColorIndex = 5 then ??????????????? 'Else: Cells(Номер_проверяемой_строки, Столбец).Font.ColorIndex = 3 End If Next End With End Sub |
Страница: 1 |
|