Macros 如何在自动运行宏后关闭xls工作表

Macros 如何在自动运行宏后关闭xls工作表,macros,xls,Macros,Xls,我有以下宏代码,这将运行宏自动登录到上述网站。但xls表仍处于打开状态 ----------------------------------------------------------------- Sub Auto_open() login End Sub Sub login() Dim IntExpl As Object Set IntExpl = CreateObject("InternetExplorer.Application") Dim dd As Object Dim

我有以下宏代码,这将运行宏自动登录到上述网站。但xls表仍处于打开状态

-----------------------------------------------------------------
Sub Auto_open()

login

End Sub


Sub login()
Dim IntExpl As Object
Set IntExpl = CreateObject("InternetExplorer.Application")
Dim dd As Object
Dim dd1 As Object
Dim dd2 As Object
Dim dd3 As Object

With IntExpl
      .navigate "........."
      .Visible = True
     ' If (.Document.getElementById("LoginUsername").exist) Then
       Do Until IntExpl.ReadyState = 4
       Loop
       Set dd = .Document.getElementById("LoginUsername")
       dd.Value = "AAAAA"
       dd.Click
       Set dd1 = .Document.getElementById("LoginPassword")
       dd1.Value = "AAAAAA"
       dd1.Click
       Set dd2 = .Document.getElementById("loginBtn")
       dd2.Click


End With
End Sub
-------------------------------------------------------------------------------

我想在运行整个宏之后关闭xls文件。

您可以定义工作簿,然后在宏完成后关闭它

Sub Auto_open()

Dim wb as Workbook
set wb = ActiveWorkbook
login
wb.close
End Sub


Sub login()
Dim IntExpl As Object
Set IntExpl = CreateObject("InternetExplorer.Application")
Dim dd As Object
Dim dd1 As Object
Dim dd2 As Object
Dim dd3 As Object

With IntExpl
      .navigate "........."
      .Visible = True
     ' If (.Document.getElementById("LoginUsername").exist) Then
       Do Until IntExpl.ReadyState = 4
       Loop
       Set dd = .Document.getElementById("LoginUsername")
       dd.Value = "AAAAA"
       dd.Click
       Set dd1 = .Document.getElementById("LoginPassword")
       dd1.Value = "AAAAAA"
       dd1.Click
       Set dd2 = .Document.getElementById("loginBtn")
       dd2.Click


End With
End Sub

我还想从xls工作表中选取数据。Set dd=.Document.getElementById(“LoginUsername”)dd.Value=“AAAAA”需要从键盘上的xls按F8键选取AAAAA值,并逐步检查代码,如果有任何错误,请通知我们。您可以使用工作表(“sheetname”).Range(“A1”)代替AAAA。我正在使用工作表(“sheetname”).Range(“A1”)。。我的值是000549,但它取549。。。我该怎么办???太好了!!,在stackoverflow上,我们将问题标记为已完成(单击我答案下方的右图标),并授予回答者一定的声誉以保持道德高尚,您是否愿意接受答案,您也可以投票。