bmutlu966
Altın Üye
- Katılım
- 26 Ocak 2006
- Mesajlar
- 756
- Excel Vers. ve Dili
- Office 365 İngilizce 64 Bit
- Altın Üyelik Bitiş Tarihi
- 31-01-2025
Arkadaşlar selam,
SAP'ye aşağıdaki kod ile Outlook dosyası ekliyorum. Dosya ekleme penceresi geldiğinde SAP dosyayı seçmemi bekliyor. Dosyayı seçtikten sonra devam ediyor.
Ben Excelimde C5:C15 hücrelerinde dosya yolunu verdiğim hücreye göre otomatik seçmesini istiyorum. Sanırım WScript.Shell objesi ile bir Script yazılarak müdahale gerekiyor olabilir. Ama konu biraz beni aşıyor. Yardımcı olabilecek bir arkadaş olursa çok sevinirim.
SAP'ye aşağıdaki kod ile Outlook dosyası ekliyorum. Dosya ekleme penceresi geldiğinde SAP dosyayı seçmemi bekliyor. Dosyayı seçtikten sonra devam ediyor.
Ben Excelimde C5:C15 hücrelerinde dosya yolunu verdiğim hücreye göre otomatik seçmesini istiyorum. Sanırım WScript.Shell objesi ile bir Script yazılarak müdahale gerekiyor olabilir. Ama konu biraz beni aşıyor. Yardımcı olabilecek bir arkadaş olursa çok sevinirim.
Kod:
Sub SAP_ye_girisleri_yap()
On Error Resume Next
son = [B65000].End(3).Row
Dim SapGuiAuto, Application, Connection, session
If Not IsObject(Application) Then
Set SapGuiAuto = GetObject("SAPGUI")
Set Application = SapGuiAuto.GetScriptingEngine
End If
If Not IsObject(Connection) Then
Set Connection = Application.Children(0)
End If
If Not IsObject(session) Then
Set session = Connection.Children(0)
End If
If IsObject(WScript) Then
WScript.ConnectObject session, "on"
WScript.ConnectObject Application, "on"
End If
'___________________________________SAP KODLAR_____________________________________________
session.findById("wnd[0]/tbar[0]/okcd").Text = "/N"
session.findById("wnd[0]").sendVKey 0
For t = 5 To son
'basla
session.findById("wnd[0]").maximize
session.findById("wnd[0]/tbar[0]/okcd").Text = [H5]
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]/usr/txtRF05L-BELNR").Text = Cells(t, "B")
session.findById("wnd[0]/usr/ctxtRF05L-BUKRS").Text = [H6]
session.findById("wnd[0]/usr/txtRF05L-GJAHR").Text = [H7]
session.findById("wnd[0]/usr/txtRF05L-XBLNR").Text = ""
session.findById("wnd[0]/usr/txtRF05L-XBLNR").SetFocus
session.findById("wnd[0]/usr/txtRF05L-XBLNR").caretPosition = 0
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]").maximize
session.findById("wnd[0]/titl/shellcont/shell").pressContextButton "%GOS_TOOLBOX"
session.findById("wnd[0]/titl/shellcont/shell").selectContextMenuItem "%GOS_ARL_LINK"
session.findById("wnd[1]/usr/ssubSUB110:SAPLALINK_DRAG_AND_DROP:0110/cntlSPLITTER/shellcont/shellcont/shell/shellcont[0]/shell").hierarchyHeaderWidth = 327
session.findById("wnd[1]/usr/ssubSUB110:SAPLALINK_DRAG_AND_DROP:0110/cntlSPLITTER/shellcont/shellcont/shell/shellcont[0]/shell").selectItem "0000000004", "HITLIST"
session.findById("wnd[1]/usr/ssubSUB110:SAPLALINK_DRAG_AND_DROP:0110/cntlSPLITTER/shellcont/shellcont/shell/shellcont[0]/shell").ensureVisibleHorizontalItem "0000000004", "HITLIST"
session.findById("wnd[1]/usr/ssubSUB110:SAPLALINK_DRAG_AND_DROP:0110/cntlSPLITTER/shellcont/shellcont/shell/shellcont[0]/shell").doubleClickItem "0000000004", "HITLIST"
'Tam burada dosya secme penceresini aciyor ve dosyayi secmemi bekliyor. İlgili dosyayı seçip open tuşuna bastığımda ise devam edip işlemi bitiriyor.
'SAP Script ile bu pencere icin otomatik kod yazilmiyor. Bu bolumdeki dosya yolu ve dosyayi VBA ile nasil secebilirim?
'eklenecek dosyanin yolu C5:C15 arasinda
session.findById("wnd[2]/tbar[0]/btn[0]").press
session.findById("wnd[1]/usr/ssubSUB110:SAPLALINK_DRAG_AND_DROP:0110/cntlSPLITTER/shellcont/shellcont/shell/shellcont[1]/shell").setSelectionIndexes 73, 99
session.findById("wnd[1]/tbar[0]/btn[0]").press
session.findById("wnd[0]/tbar[0]/okcd").Text = "/N"
session.findById("wnd[0]").sendVKey 0
Cells(t, "E") = "OK"
Next
'_____________________________________________________________________________________
End Sub