Problema Escrever Excel

Pessoal, tudo bem?

Estou com problemas para escrever alguns dados em planilha Excel quando uma tag muda de estado (sempre que for 1 tenho que escrever).

Primeiro Problema: nenhum dado é escrito na planilha (ela não é alterada pelo programa);

Segundo Problema: quando coloco os comandos para fechar e sair do Excel, tudo trava e não consigo mais mexer no supervisório. Se não coloco os comandos, vários processos do Excel vão ficando abertos.

Alguma dica?

Segue o código:

Sub Texto1_onChangeTagDB()

isWriteExcel = Application.GetObject("Dados.Auxiliares.auxSalvarExcel").Value

Dim objExcel,objWorkBook,sheet
Set objExcel = CreateObject("EXCEL.APPLICATION")
Set objWorkBook = objExcel.Workbooks.open("C:\Supervisorio E3\Excel\Report.xlsx")
Set sheet = objWorkBook.Sheets("Report")

If(isWriteExcel) Then
	
	'Script para adicionar informação no arquivo**
	sheet.Cells(1,1) = "100"
	sheet.Cells(1,2) = "200"
	sheet.Cells(1,3) = "300"
			
	'MsgBox "VALOR ALTERADO.", vbExclamation, "TAG ALTERADO"
Else
	MsgBox "VALOR ALTERADO.", vbExclamation, "TAG NAO ALTERADO"
End If

objWorkBook.Close
objExcel.Quit
Set objWorkBook = Nothing
    Set objExcel = Nothing	

End Sub

Tente desabilitar os alertas e salvar a planilha antes de fechá-la.

isWriteExcel = Application.GetObject("Dados.Auxiliares.auxSalvarExcel").Value

Dim objExcel,objWorkBook,sheet
Set objExcel = CreateObject("EXCEL.APPLICATION")
Set objWorkBook = objExcel.Workbooks.open("C:\Supervisorio E3\Excel\Report.xlsx")
Set sheet = objWorkBook.Sheets("Report")

' Desabilitar os alertas
objExcel.DisplayAlerts = False

If (isWriteExcel) Then	
	'Script para adicionar informação no arquivo**
	sheet.Cells(1,1) = "100"
	sheet.Cells(1,2) = "200"
	sheet.Cells(1,3) = "300"
			
	'MsgBox "VALOR ALTERADO.", vbExclamation, "TAG ALTERADO"
Else
	MsgBox "VALOR ALTERADO.", vbExclamation, "TAG NAO ALTERADO"
End If

' Salvar
objWorkBook.Save

objWorkBook.Close
objExcel.Quit
Set objWorkBook = Nothing
Set objExcel = Nothing
1 Like

Funcionou Leandro! Muito obrigado.