基本上,我應該什麼時候使用Application.Windows(),什麼時候應該使用Excel.Windows()?任何代碼示例都是特別優選的。Excel VBA中Application.Windows()和Excel.Windows()之間的區別是什麼?
回答
Excel.Windows()
讓你寫信給它[1],而Application.Windows()
是隻讀[2]根據文檔。 [1],[2]。
除了Application
版本的只讀區別之外,它們是相同的。因此,如果您只是閱讀屬性,請使用應用程序版本,如果您需要更改某些內容,請使用Excel
版本。
@接受我相信嗎?我老實說不是100%肯定的,坦率地說,我認爲這並不重要。 VBA是一團糟,我試着寫出完成任務所需的最小數量。背景主要在服務器端Web,但是在今年夏天停止了VBA的工作。 –
@AdamLeBlanc:對不起,你們兩人之間跳躍,但你爲什麼認爲VBA是一團糟? –
@SiddharthRout它只是缺乏很多其他語言所具有的功能,我已經習以爲常了,而且它的功能與大多數其他語言完全不同。我覺得微軟最好讓你使用c#或其他.NET語言之一來執行應用程序腳本,因爲這些語言以更標準的方式來完成任務。對於非程序員來說,Visual Basic有很多易用的東西,這對開發人員來說有點令人沮喪。 –
Excel
庫的類名爲Windows
和Application
。然後Excel.Windows
是類別Windows
的完全限定名稱。類Application
有屬性命名爲Windows
它返回所有工作簿中窗口的集合。
所以,你可以使用Excel.Windows
當你想引用一個類Windows
,當你想引用窗口對象,你會用Application.Windows
財產。 HTH。
有一個與命名問題。類Windows
的名稱和屬性Windows
是相同的。所有下面的代碼示例是指窗口對象的同一集合使用Windows
屬性:
Dim eaw As Excel.Windows
Dim aw As Excel.Windows
Dim ew As Excel.Windows
Set eaw = Excel.Application.Windows
Set aw = Application.Windows
Set ew = Excel.Windows
代碼Set aw = Application.Windows
和Set ew = Excel.Windows
是相同的,因爲許多返回最常用的對象的屬性和方法,可以使用沒有Application
對象限定符。可以在沒有應用程序對象限定符的情況下使用的屬性和方法被認爲是global
,Windows
也是如此。
總結:
在聲明類型的變量
Excel.Windows
當你完全合格的名字,例如:你會不會犯任何錯誤Dim wnds As Excel.Windows
。當提到窗口的對象集合這是由你選擇哪種方式,以下所有條件都相等(返回相同的集合)
Set eaw = Excel.Application.Windows
,Set aw = Application.Windows
,Set ew = Excel.Windows
。 注意:根據我的Excel 2007的對象瀏覽器,這個集合是read-only
。
- 1. VBA(Excel)中= Empty和IsEmpty()之間的區別是什麼?
- 2. 在Excel VBA中,「IsNull()」和「var = Null」之間有什麼區別?
- 3. $(())和expr之間的區別是什麼?
- 4. $和$ .fn之間的區別是什麼?
- 5. ++和:haskell之間的區別是什麼?
- 6. $(「」)和$ .find(「」)之間的區別是什麼?
- 7. 「\」和「\。」之間的區別是什麼?
- 8. 「$ | ++」和「$ | = 1」之間的區別是什麼
- 9. $(...)和`...`之間的區別是什麼
- 10. .equals()和==之間的區別是什麼?
- 11. [undefined]和[,]之間的區別是什麼?
- 12. 什麼之間的區別〜^和Git中
- 13. 區別:%% a和%variable%變量之間的區別是什麼?
- 14. 什麼是爲PrintWriter和DataOutputStream之間的區別是什麼?
- 15. 「;」和「;」之間的區別是什麼?和T-SQL中的「GO」?
- 16. 「。」和「。」之間的區別是什麼?和[System.ENVIRONMENT] :: PowerShell中的CurrentDirectory?
- 17. MVC和MVVM之間的區別和相似之處是什麼?
- 18. TVF/UDF之間的區別是什麼
- 19. [EmailPasswordAuthProvider,EmailAuthProvider]之間的區別是什麼
- 20. System.Linq.Enumerable.WhereListIterator&System.Linq.Enumerable.WhereSelectListIterator之間的區別是什麼?
- 21. 什麼@android之間的區別:和android:
- 22. C#和MVC中System.Environment.Username和User.Identity.Name之間的區別是什麼?
- 23. 在Android中,MotionEvent中getAction()和getActionMasked()之間的區別是什麼?
- 24. VBA Word:Font.TextColor和Font.ColorIndex之間的區別?
- 25. Ext JS中的grid.columns和grid.getColumnManager()。getColumns()之間的區別是什麼?
- 26. Selenium中的定位符和Webelement之間的區別是什麼?
- 27. log4net dll中的XmlCofigurator和DomCofigurator之間的區別是什麼?
- 28. MassTransit中的Consumes.For,Consumes.Selected,Consumes.All和Consumes.Context之間的區別是什麼?
- 29. Go中的new(Struct)和&Struct {}之間的區別是什麼?
- 30. .Net 3.5中的Microsoft.Web.Management和System.DirectoryServices之間的區別是什麼?
也許和也許有什麼區別? 我會說Excel.Windows和Application.WIndows是一樣的。 – Storax