Страницы: 1
RSS
Select case like
 
Доброго времени суток.
подскажите пожалуйста, как прикрутить условие like к Select case ?

есть код. который проверяет кастомера, и соответственно пишет значение в ячейку. Но кастомер в таблице может быть с пробелами занесен, как в примере кода.
Код
For i = 1 To 17
    customer = Cells(i, 11).Value
    Select Case customer
    Case "TOV FOOD ", " CROSS DOCK PLATF ", "KIEV            "
      Cells(i, 3).Value = "NA"
      Case "STV     ", "SAV SERVICE  "
      Cells(i, 3).Value = "RD"
      Case Else
       Cells(i, 3).Value = "Other"
    End Select
Next
End Sub
 
Код
For i = 1 To 17
    customer = Cells(i, 11).Value
    Select Case Ucase(Trim(customer))
    Case "TOV FOOD", "CROSS DOCK PLATF", "KIEV"
      Cells(i, 3).Value = "NA"
      Case "STV", "SAV SERVICE"
      Cells(i, 3).Value = "RD"
      Case Else
       Cells(i, 3).Value = "Other"
    End Select
Next
End Sub
Учимся сами и помогаем другим...
 
Цитата
Евгений Квитницкий пишет:
кастомера
Это замерщик касты или покупатель? :D
There is no knowledge that is not power
 
используйте trim для удаления лишних пробелов и lcase для приведения к единому регистру
Живи и дай жить..
 
Цитата
Johny пишет:
Цитата
Евгений Квитницкий пишет:
кастомера
Это замерщик касты или покупатель? :D
Покупатель ))
 
Цитата
ber$erk пишет:
Код
 For i = 1 To 17
    customer = Cells(i, 11).Value
    Select Case Ucase(Trim(customer))
    Case "TOV FOOD", "CROSS DOCK PLATF", "KIEV"
      Cells(i, 3).Value = "NA"
      Case "STV", "SAV SERVICE"
      Cells(i, 3).Value = "RD"
      Case Else
       Cells(i, 3).Value = "Other"
    End Select
Next
End Sub 
а что нить типа like ? если не "CROSS DOCK PLATF" а "CROSS DOCK PLAT" например..
 
Код
    For i = 1 To 17
        customer = UCase(Trim(Cells(i, 11).Value))
        
        If customer Like "TOV *" Or customer Like "CROSS DOCK *" Or customer Like "KIEV*" Then
            Cells(i, 3).Value = "NA"
        ElseIf customer Like "STV*" Or customer Like "SAV *" Then
            Cells(i, 3).Value = "RD"
        Else
            Cells(i, 3).Value = "Other"
        End If
    Next
Учимся сами и помогаем другим...
 
нет, так не получится

но можно записать массив кастомеров и по массиву циклом пройти с like - получится не хуже
Живи и дай жить..
 
Код
    customer = " CROSS DOCK PLATF "
    Select Case True
    Case customer Like "*TOV FOOD*" Or customer Like "*CROSS DOCK PLAT*" Or customer Like "*KIEV*"
        Cells(i, 3).Value = "NA"
    Case customer Like "*STV*" Or customer Like "*SAV SERVICE*"
        Cells(i, 3).Value = "RD"
    Case Else
        Cells(i, 3).Value = "Other"
    End Select
 
Вот такая конструкция будет работать

Select Case True
       
Case A Like "*123"
'Ваш код
       Case А Like "123*"
            'Ваш код
' и т.д. и т.п.
End Select

ПыСы. Не могу оформить код тегами - нет панели. У всех так?
Согласие есть продукт при полном непротивлении сторон
 
ber$erk , спасибо большое, именно оно
 
Есть панель, не пропадала...
 
Hugo, спасибо за инфу, тоже все восстановилось после перезапуска Googla
Согласие есть продукт при полном непротивлении сторон
Страницы: 1
Читают тему
Наверх