Oluşturduğum makrosu bir Excel elektronik tablosundan isimler alıyor, Internet Explorer'ı açar ve çevrimiçi dizini arar. Dizini aradıktan sonra, yöneticinin adıyla bir Java formu oluşturur. Yönetici ismini manuel olarak işaretleyebilirim, sağ tıkla, kısayolu kopyala ve daha sonra formata geri gönderebiliyorum. Ancak, tutarlı sekme ve kısayolu kopyalama ile ilgili sorunlar yaşıyorum.Internet explorer ile VBA etkileşimi
- Odağı IE penceresine geri getirmenin basit bir yolu var mı?
- Manuel olarak tıklatmadan kısayolu nasıl kopyalarız?
Kodu:
sizin modülün başındaSub Macro1()
'
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")
ie.Visible = True
ie.navigate "****url****"
While ie.busy
DoEvents
Wend
ie.document.getElementById("SSOID").Value = "Z19516732"
ie.document.getElementById("Advanced").Checked = False
ie.document.all("Search").Click
'this loop is to slow the macro as the java form is filled from the search
For i = 1 To 400000000
i = i + 1
Next i
'ie.Object.Activate
ie.document.getElementById("Advanced").Checked = False
ie.document.getElementById("SSOID").Focus
Application.SendKeys "{TAB 6}" ', True
'bring up the control menu/right click
Application.SendKeys "+{F10}"
'copy shortcut is 8 items down on the list
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
'enter was not working so the shortcut for the menu is 't'
'SendKeys "{ENTER}"
Application.SendKeys "{t}"
Windows("Book21").Activate
Range("A1").Select
ActiveSheet.Paste
End Sub
Bu setForegroundWindow'u denedim, ancak bu sefer işe yaradı, Teşekkürler! Ancak html kaynağı, gereken bağlantıyı göstermiyor. Bağlantıya ihtiyacım olan şey tam olarak değil. Metne ihtiyacım var (Yöneticinin adı), ancak sağ tıklama ile kopyalayamıyorum. Belki de metni vurgulamanın basit bir yolu var mı? Bağlantıyı kopyalayıp yapıştırmayı planlıyorum ve daha sonra hte link formunun ismini temizlemek için bazı hızlı çizgiler çiziyorum. – orangehairbandit
Teşekkürler Gaffi!Pencere odaklama ile ilk bölüm müthiş gibi çalışır. Daha önce denediğimi söylediğim gibi, ama sihirli dokunuşa sahip olmalısın. Sorumluluğun ikinci kısmı olarak, kısayol oluşturdum, hatamı buldum. Her ne sebeple olursa olsun, arama kompostu için kullandığım ".Focus" sadece odaklanıp seçmiyordu. Bu yüzden ".select" olarak değiştirdiğimde ve bir application.sendkeys "~" (Enter tuşu) ile belirtilen hte sendkeys, hepsi bir araya geldi! Benim ilk kez burada bir kullanıcı olarak sadece bir okuyucu ve onun güzel hasta kötü bir yığın olarak! Teşekkürler! – orangehairbandit
@orangehairbandit Glad Yardım edebilirim! – Gaffi