2017-02-01 4 views
2

Я пытаюсь использовать VBA в Excel для поиска и замены нескольких значений. Поле, которое обновляется, имеет HTML-текст, поэтому я получаю всплывающее окно, в котором говорится, что я потеряю изменения форматирования, и когда он будет опубликован обратно в TFS, он будет сохранен как обычный текст. Использование Application.displayalerts = false не останавливает появление этого окна.Application.displayalerts = false not stopping popup window

Есть ли способ, которым я могу использовать код, чтобы это ушло?

Warning message

+2

Попробуйте добавить это: Application.EnableEvents = False – User632716

+1

уже пробовал - не повезло –

+0

на самом деле это было отключить обновление экрана, что я бы попробовал - отключить события как таковые ems работать. спасибо! –

ответ

3

Addinng ниже линии будет решить эту проблему.

Application.EnableEvents = False 

Если вы заинтересованы, я хотел бы использовать эту функцию, когда я начала длительный процесс:

Sub SetEvents(ByVal State As Boolean) 
    With Excel.Application 
     .DisplayAlerts = State 
     .ScreenUpdating = State 
     .EnableEvents = State 
     If State = True Then .Calculation = xlCalculationAutomatic Else .Calculation = xlCalculationManual 
    End With 
End Sub 

При добавлении этого вы можете отключить Calcs, события, экран и оповещения, как это в ваш главный суб:

Sub CallEvents() 
    SetEvents False 
    'Do some stuff 
    SetEvents True 
End Sub