Posta o arquivo com o codigo COMPLETO.
Segue o código que estou usando:
---------------------------
Sub Atualiza_grade()
Application.ScreenUpdating = False
If Cells(11, 22).Value = "On" Then
Call Limpar_grade
Cells(11, 22).Value = "Off"
Else
Cells(11, 22).Value = "On"
v_linha = Cells(11, 33).Value 'Captura a até qual linha deve ser montada
v_servidor_grade = "=RTD(""tryd.rtdserver"""
v_vazio = 17
v_fim = v_linha
'-----Limpa eventuais células preenchidas
Range("X17:AL" & v_fim).Select
Selection.ClearContents
ActiveCell.Select
Do While v_vazio <= v_fim
If Cells(v_vazio, 21).Value <> "" Then
v_ativo = """" + Cells(v_vazio, 21) + """"
'-----Atualiza ativos
Cells(v_vazio, 24).Value = v_servidor_grade + ";;""COT"";" + v_ativo + ";""Hora"")"
Cells(v_vazio, 26).Value = v_servidor_grade + ";;""COT"";" + v_ativo + ";""Ult"")"
Cells(v_vazio, 28).Value = v_servidor_grade + ";;""COT"";" + v_ativo + ";""VarPer"")" + "/100"
Cells(v_vazio, 30).Value = v_servidor_grade + ";;""COT"";" + v_ativo + ";""Max"")"
Cells(v_vazio, 32).Value = v_servidor_grade + ";;""COT"";" + v_ativo + ";""Min"")"
Cells(v_vazio, 34).Value = v_servidor_grade + ";;""COT"";" + v_ativo + ";""Abert"")"
Cells(v_vazio, 36).Value = v_servidor_grade + ";;""COT"";" + v_ativo + ";""Fech"")"
End If
v_vazio = v_vazio + 1
Loop
End If
Range("A1").Select
Application.ScreenUpdating = True
End Sub
---------------------------
Valeu pela ajuda,
Postado : 12/04/2017 4:22 pm