Застрял в заявлении IF для генерации файла подписи - PullRequest
0 голосов
/ 04 мая 2018

Я пытаюсь создать сценарий подписи, и я пока не смог полностью обдумать это. Я хотел бы напечатать «| M», где оператор If, если в AD введено мобильное значение для этого пользователя, в противном случае просто продолжите выполнение оставшейся части сценария. (Я знаю, что мое If утверждение не работает, но я подумал, что оставлю это там с некоторой ясностью относительно того, что я хочу.)

'Contact line
objSelection.Font.Size = 8
objSelection.Font.Color = RGB(0,0,0)
objSelection.TypeText "P: " & strPhone
objSelection.TypeText " | D: " & strDirect

If strmobile = hasvalue Then
    objSelection.typetext " | M: " & strMobile
    If strmobile = empty Then
    EndIf

    objSelection.TypeText " | E: " & strEmail
    objSelection.TypeText " | W: " & strWebsite
    objSelection.TypeText Chr(11)

1 Ответ

0 голосов
/ 04 мая 2018

В случае сомнений прочтите документацию .

' Block syntax: 
If condition Then
   [statements]
[ElseIf condition-n Then
   [elseifstatements]] . . .
[Else
   [elsestatements]]
End If 

При использовании синтаксиса блока каждый оператор If должен быть закрыт соответствующим End If. Кроме того, это End If, а не EndIf.

Если вы хотите вставить что-то, когда strmobile имеет значение и ничего не делать, в противном случае вы бы выразили это следующим образом:

If Not IsEmpty(strmobile) Then
    objSelection.typetext " | M: " & strMobile
EndIf

Обратите внимание, что Empty, Null и пустая строка ("") - это разные значения в VBScript, поэтому в зависимости от фактического значения strmobile может потребоваться настроить проверку соответствующим образом.

...