Как добавить значение и сохранить файл Excel с VBA - PullRequest
0 голосов
/ 03 марта 2020

Я создаю форму Excel, используя правила Outlook с VBA и python для создания потока одобрения. Если правила Outlook соответствуют условию TRUE, это должно быть: 1. Запустите сценарий python. 2. Получите подробный файл журнала и, наконец, записать новое значение в книгу Excel и сохранить файл. Но при записи нового значения в последнем процессе он не работает.

Это мой код:

Sub A_P(Item As Outlook.MailItem)

'1.Run python
Shell ("python C:\Users\CFGFIN002\Desktop\AP_xx.py")

'2.Update log file
Dim fso As Object
Dim logFile As Object
Dim logFilePath As String
Dim logFileName As String
Set fso = CreateObject("Scripting.FileSystemObject")
logFileName = "mylog" & ".txt" 'Get Name
myFilePath = "R:\ASD_Accounting system development\Project\Invoice form\" & logFileName
If fso.FileExists(myFilePath) Then
   Set logFile = fso.OpenTextFile(myFilePath, 8)
Else
   Set logFile = fso.CreateTextFile(myFilePath, True) ' create the file instead
End If
'logFile.WriteLine "[" & Date & " " & Time & "]" & "00000" & "_" & i & "  " & "Amount : " & 
Range("I19") & " Transaction date : " & Range("B32") & " Account No. : " & Range("C32") & " Account 
Name : " & Range("D32") & " Bank : " & Range("F32") & " Amount : " & Range("I22") & " " & Range("K9") 
& " User : " & Range("E34") & " Approver : " & Range("E36") & "Running number : " & Range("G1") 
'Detail in Log file
logFile.WriteLine "[" & Date & " " & Time & "]" & "Status : Approved_Manager Approval"
logFile.Close ' close the file

'3.Last one write value to excel workbook and save it.
Workbooks.Activate("Form_original.xlsm").Activate.Range("G36").Value = "Date is : " & Date & " and 
Time is : " & Time
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub

Это мой образец рабочей книги Excel.

This's my sample Excel Workbook.

Это мой вывод, необходимый .

This's my output needed.

Скажите, пожалуйста, как решить эту проблему. Извините за плохой навык Engli sh.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...