'Option Compare Text 'abc=ABC
Private Function GetNumber%(iCell As Range)
Select Case Left(CStr(iCell(1)), 3)
Case "ABC": GetNumber = 1
Case "DEF": GetNumber = 2
Case "GHI": GetNumber = 3
Case Else: GetNumber = 0 'Optional
End Select
End Function
Небольшой Лексический разбор в виде макроса или функции на VB в EXCEL.
Прошу вас подсказать макрос или функцию которая делала бы лексический
разбор значения ячеек в следующем виде:
Функция/процедура должна возвращать значения "1","2",или "3" в зависимости от начальных 3-х символов ячейки.
Например:
Ячейка начинается на бувкы "ABС..."... возв. значение ф-ции - "1" .
Ячейка начинается на бувкы "DEF..."... возв. значение ф-ции - "2" .
Ячейка начинается на бувкы "GHI..."... возв. значение ф-ции - "3" .
Заранее спасибо !!!
А если с "J"? Или с "Ю"? Или с "7"? Что выдавать в этом случае?
значение по умолчанию - "0", например
Ну поможите чайнику:)
Код:
Код:
'Option Compare Text 'abc=ABC
Private Function GetNumber%(iCell As Range)
Select Case Left(CStr(iCell(1)), 1)
Case "A", "B", "C": GetNumber = 1
Case "D", "E", "F": GetNumber = 2
Case "G", "H", "I": GetNumber = 3
Case Else: GetNumber = 0 'Optional
End Select
End Function
Private Function GetNumber%(iCell As Range)
Select Case Left(CStr(iCell(1)), 1)
Case "A", "B", "C": GetNumber = 1
Case "D", "E", "F": GetNumber = 2
Case "G", "H", "I": GetNumber = 3
Case Else: GetNumber = 0 'Optional
End Select
End Function
Хотя, нет. Наверное, твой вариант...