Ввод данных из Excel в SAP GUI, затем вывод определенной строки и столбца обратно в Excel - PullRequest
0 голосов
/ 06 июня 2018

Начальный вопрос внизу

ОБНОВЛЕНИЕ:

Вот то, с чем я работаю до сих пор, но это дает мне ошибку 619, потому что SAP не 't возврат данных, когда номер уведомления не найден.

Sub QM03()

Set SapGuiAuto = GetObject("SAPGUI")  'Get the SAP GUI Scripting object
Set SAPApp = SapGuiAuto.GetScriptingEngine 'Get the currently running SAP GUI
Set SAPCon = SAPApp.Children(0) 'Get the first system that is currently connected
Set session = SAPCon.Children(0) 'Get the first session (window) on that connection

'Запустите транзакцию для просмотра сеанса таблицы. StartTransaction "QM03"

Dim rngNotificationNumbers As Range
Set rngNotificationNumbers = Range("A4:A704")
Dim arrNotificationNumbers(700) As String
Dim cell As Range
Dim i As Long
i = 0

For i = 0 To UBound(arrNotificationNumbers) - 1
session.FindById("wnd[0]/usr/ctxtRIWO00-QM03").Text = arrNotificationNumbers(i)
session.FindById("wnd[0]").SendVKey 0
StatusBarText = session.FindById("wnd[0]/sbar/pane[0]").Text
If InStr(StatusBarText, " does not exist") Then
  GoTo NextIteration
End If

NextIteration:
Next

End Sub

`

*** Я новичок в SAP и VBA, но мне действительно нужна помощь!

Я пытаюсь взять номера уведомлений из листа Excel, ввести их в QM03, и оттуда перейтив «Элементы» для вывода «Тип дефекта» в Excel, а затем перейдите к «Элементу задачи» в строке с кодом задачи P020 и выведите «Текст задачи» в Excel.

Если уведомлениеномер не найден, я хотел бы пропустить его и перейти к следующему.

Я использую SAP GUI для Windows.

Буду очень признателен за любую помощь!Спасибо! ***

1 Ответ

0 голосов
/ 07 июня 2018

Вместо

If InStr(StatusBarText, " does not exist") Then
  GoTo NextIteration
End If

NextIteration:

Сделайте что-то подобное

If InStr(StatusBarText, " does not exist") Then
  ' Do nothing 
else
   ' Do your stuff here
End If

и удалите метку NextIteration:

PS Вы, кажется, упускаете базовые знания программирования, поэтому выможно посмотреть здесь или другие сайты для начинающих

...