S

Çözüldü SAP ile excel arası geçiş yapmak

  • Konuyu başlatan Konuyu başlatan selis
  • Başlangıç tarihi Başlangıç tarihi

selis

Normal Üye
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Merhaba arkadaşlar,
Ben SAP ile scripte kayıt alarak işlemleri yaptırıyorum. Ancak excelden veri kopyalayıp ilgili hücreye yazmasını istiyorum. Kod çalışmadı, acaba böyle bir şey mümkün mü? Kodu aşağıdaki gibi yazdım.
Şimdiden teşekkürler..

ThisWorkbook.Activate

Sheet2.Cells(1, 1).Copy
session.findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,4]").Paste
 
Bunun için SAP'de Makro Kaydet yaparak oluşan kodları buraya atmalısınız. Yazdığınız şekilde kod çalışmaz.

Aşağıdaki gibi bir deneyin eğer olmazsa makro kaydet yöntemi ile oluşturduğunuz kodları burada paylaşın ona göre yardımcı olalım.

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
 
Çok teşekkürler, denedim malesef olmadı hata verdi. Dediğiniz gibi kayıt alıp yaptığımda da kopyala yapıştırı almadı ben yazmaışım gibi kod çıktı aşağıda kodu paylaşıyorum. Şimdiden teşekkür ederiim.
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
session.findById("wnd[0]").resizeWorkingPane 101,18,false
session.findById("wnd[0]/usr/btn%_S_LGORT_%_APP_%-VALU_PUSH").press
session.findById("wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,0]").text = "100"

(Burda "100" yazdığım aslında excelden kopyaladığım değer)
 
Çok teşekkür ederiim. Değişken değerler için böyle bir şey yazdım. A2 hücresinden dolu hücreye kadar seçsin diye ama hata veriyor. Neden oluyor acaba aralık tanımlayamıyor muyum? Şimdiden teşekkürler.

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(3 satır)
 
Çok teşekkür ederiim. Değişken değerler için böyle bir şey yazdım. A2 hücresinden dolu hücreye kadar seçsin diye ama hata veriyor. Neden oluyor acaba aralık tanımlayamıyor muyum? Şimdiden teşekkürler.

Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(3 satır)
Bu şekilde olmaz,
Aşağıdaki gibi deneyin bakalım olacak mı?

VBA:
Görüntülemek için giriş yapmanız gerekmektedir.
(4 satır)
 
Hocam hata verdi, bence [" & ii - 1 & ",0]").Text bu kısımdan dolayı çünkü tek tek yazacaksa forla aşağı inmesi gerekiyor. O yüzden aralığı direk alıp kopyalasa ne iyi olurdu..
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(1 satır)
 
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(8 satır)


Hocam tek tek yazdım o yüzden değer olarak gösterdi bu şekilde. Daha fazla veri var ama örnek olarak bu kadar doldurdum. Teşekkürler..
 
Hocam söylediğiniz gibi yaptım, 8 de durmasının sebebi kendisi aşağı inemiyor 8 satır dolduktan sonra. Kod bu şekilde, her 8 den sonra böyle bir şey yazmamız gerekiyorsa bunu yapmak mümkün olur mu hocam?
Kod:
Görüntülemek için giriş yapmanız gerekmektedir.
(57 satır)
 
Üst