VBA Определить последнюю отредактированную ячейку и вставить комментарий с текущей датой и временем при запуске макроса - PullRequest
0 голосов
/ 05 июня 2018

Бит застрял, так как я не могу найти ответ где-нибудь в Google ..

В настоящее время я делаю проект для работы, которая использует Excel (VBA) для выполнения простых транзакций в SAP.Теперь, как хороший косметический аддон, я бы выделился как часть моего макроса SapConfirm, чтобы определить последнюю отредактированную ячейку и добавить в нее комментарий с текстом из ячейки L8, текущим временем и датой.

Заранее спасибо!

Мой код пока ..

Sub SapConfirm()

Application.ScreenUpdating = False
 'Sap automated confirmation
        Dim answer As Integer
        answer = MsgBox("You are about to confirm " & ActiveSheet.Range("B1") & " tray(s) of " & ActiveSheet.Range("A2").Value & vbNewLine & " SAP No. : " & ActiveSheet.Range("A1"), vbYesNo + vbQuestion, "Canceled")
        If answer = vbYes Then
                On Error GoTo safe_exit

    session.findById("wnd[0]/tbar[0]/okcd").Text = "z490"
    session.findById("wnd[0]/tbar[0]/btn[0]").press
    session.findById("wnd[0]/usr/ctxtMATNR-LOW").Text = ActiveSheet.Range("A1")
    session.findById("wnd[0]/usr/ctxtMATNR-LOW").SetFocus
    session.findById("wnd[0]/usr/ctxtMATNR-LOW").caretPosition = 6
    session.findById("wnd[0]/tbar[1]/btn[8]").press
    session.findById("wnd[1]").sendVKey 4
    session.findById("wnd[2]/usr/lbl[1,8]").SetFocus
    session.findById("wnd[2]/usr/lbl[1,8]").caretPosition = 4
    session.findById("wnd[2]").sendVKey 2
    session.findById("wnd[1]/tbar[0]/btn[0]").press
    session.findById("wnd[0]/tbar[1]/btn[5]").press
    session.findById("wnd[0]/usr/chk[1,3]").Selected = True
    session.findById("wnd[0]/tbar[1]/btn[5]").press
    session.findById("wnd[1]/usr/txtV_CONFIRMATION_QTY").Text = ActiveSheet.Range("B1")
    session.findById("wnd[1]").sendVKey 5
    session.findById("wnd[0]/tbar[0]/btn[15]").press
    session.findById("wnd[0]/tbar[0]/btn[15]").press
        'Here is where I would like the comment adding to take place
Else

     MsgBox ("Please login to SAP to enable confirmation process")
     Application.ScreenUpdating = True
safe_exit:
    MsgBox ("Please Login to SAP")
     Application.ScreenUpdating = True    
     End If
End Sub
...