• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

internet vergi dairesine giriş vba kodu

  • Konbuyu başlatan Konbuyu başlatan adsoft
  • Başlangıç tarihi Başlangıç tarihi
Katılım
28 Şubat 2007
Mesajlar
356
Excel Vers. ve Dili
excellin tüm versiyonları
merhaba internet vergi dairesinde şifre kullanarak excellde giriş yapmak istiyorum
https://intvd.gib.gov.tr/internetvd/index.jsp
yukardaki açılan sayfada aşağıya doğru gelindiğinde internet vergdi dairesi butonunun tıklandığından excellde
a1= kullanıcı kodu
b1 = parola
c1= şifre
gelmesini istiyorum yardımcı olursanız sevinirim
 
Bu kodu bir dene internet explorer 11 de çalışıyor daha alt versiyonlarda çalışmıyor.

Kod:
#If Win64 Then
Private Declare PtrSafe Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Long
Private Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
#Else
Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Long
Private Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
#End If

Sub deneme()
Dim URL As String

Dim ie As Object
URL = "https://intvrg.gib.gov.tr/"
Set ie = CreateObject("InternetExplorer.Application")

With ie
.navigate URL
.Visible = 1
apiShowWindow ie.hwnd, 3

Do Until ie.ReadyState = 4: DoEvents: Loop
Do While ie.busy: DoEvents: Loop

ie.document.all.Item("loginSifreli").Click
Do Until ie.ReadyState = 4: DoEvents: Loop
Do While ie.busy: DoEvents: Loop
ie.document.all.Item("kullaniciKodu").Value = Cells(1, "a")
ie.document.all.Item("parola").Value = Cells(1, "b")
ie.document.all.Item("sifre").Value = Cells(1, "c")
Application.Wait (Now + TimeValue("0:00:01"))

Set botoes = ie.document.getElementsByTagName("input")

For Each bt In botoes
If bt.Value = "Giriş" Then
bt.Click
Application.Wait (Now + TimeValue("00:00:01"))
Exit For
End If
Next

Do Until ie.ReadyState = 4: DoEvents: Loop
Do While ie.busy: DoEvents: Loop
'ie.Quit: Set ie = Nothing
End With


MsgBox ("Bitti  ")
End Sub
 
Bu kod biraz daha kısa

Kod:
#If Win64 Then
Private Declare PtrSafe Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Long
Private Declare PtrSafe Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
#Else
Private Declare Function InternetCheckConnection Lib "wininet.dll" Alias "InternetCheckConnectionA" (ByVal lpszUrl As String, ByVal dwFlags As Long, ByVal dwReserved As Long) As Long
Private Declare Function apiShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
#End If

Private Sub CommandButton1_Click()
Dim URL As String

Dim ie As Object
URL = "https://intvrg.gib.gov.tr/"
Set ie = CreateObject("InternetExplorer.Application")

With ie
.navigate URL
.Visible = 1
apiShowWindow ie.hwnd, 3

Do Until ie.ReadyState = 4: DoEvents: Loop
Do While ie.busy: DoEvents: Loop

ie.document.all.Item("loginSifreli").Click
Do Until ie.ReadyState = 4: DoEvents: Loop
Do While ie.busy: DoEvents: Loop
ie.document.all.Item("kullaniciKodu").Value = Cells(1, "a")
ie.document.all.Item("parola").Value = Cells(1, "b")
ie.document.all.Item("sifre").Value = Cells(1, "c")
Application.Wait (Now + TimeValue("0:00:01"))
ie.document.getelementsbytagname("input")(3).Click

Do Until ie.ReadyState = 4: DoEvents: Loop
Do While ie.busy: DoEvents: Loop
'ie.Quit: Set ie = Nothing
End With

MsgBox ("Bitti  ")
End Sub
 
Merhaba Sayın ÖZDEMİR.

Son gönderdiğiniz kod ile ilgili olarak bir şey sormak istiyorum.
Sanırım GİB'in sayfalarının çalışma mantığı kaynaklı olarak ilk giriş ekranının açık olarak kalması gerekiyor ki kullanıcı sayfasına geçiş yapılabilsin.
Neticede iki adet I.Explorer sayfası açılıyor, sorun yok.

Kod'u ben, ilgili sayfayı (nihai sayfa) userform üzerindeki WebBrowser penceresinde görüntülemeyi denedim ancak başarılı olamadım.
Bunun için bir şey yapılabilir mi acaba?
.
 
WebBrowser nesnesi bu uygulamada desteklenmiyor sanırım
1 nolu mesajımda da yazdım internet explorer 11 de çalışıyor daha alt versiyonlarda çalışmıyor dolayısı ile işletim sistemi windows 8 ve üzeri bilgisayarlarda çalışıyor.
 
Benim işletim sistemi windows 8.1
WebBrowser nesnesi giriş buttonuna tıklamıyor.

örnek dosya ekliyorum.
 

Ekli dosyalar

Sayın ÖZDEMİR;

I.Explorer sürümü 11, Windows7 Home Basic (sp1) .

-- Kod'u sayfadaki CommandButton ile çalıştırdığımda bir sorun yok.
Önce GİB sayfası bir I.Explorer penceresinde açılıyor,
kullanıcı adı şifre filan geçilip yeni bir I.Explorer penceresi açılıyor ve giriş tamam, hiçbir sorun yok.

-- Benim merak ettiğim; kod, üzerinde konumlandırılmış bir WebBrowser nesnesi olan userformdaki CommandButton üzerinden çalıştırıldığında;
(burada da aslında bir sorun yok, haricen önceki seçenekteki gibi 2 adet I.Explorer sayfası açılarak giriş sorunsuz gerçekleşiyor)
kulanıcı adı/şifre ekranı sonrasında açılan ikinci I.Explorer penceresinin, userform üzerindeki WebBrowser nesnesinde açılmasıyla ilgili idi.

Olurunu/olmazını bilemiyorum tabi, bu tür konularda tecrübeli olan sizsiniz.
.
 
Çok tşk ederim aynı kodu chrome kullanarak yapmak mümkün mü bunların hepsi explorer da çalışıyor
 
chrome de bu özellik olmadığından bu işlemler henüz yapılamıyor
 
Başka konu başlığında da yazmıştım aslında bu gibi siteler er geç güvenlik kodu uygulamasına geçiyor ve kodlar bir işe yaramıyor fazladan uğraşmak gereksiz galiba nacizane fikrim bu!
 
Geri
Üst