2010-01-27 70 views
1

在Excel中有一個PrintOut方法可以打印內容。 它接受打印機名稱作爲參數,並且該打印機名稱不僅僅是系統打印機名稱,而是打印機所連接的系統打印機名稱和端口的組合。Excel:如何獲取與區域設置無關的打印機名稱?

.PrintOut ActivePrinter:="MyPrinter" & " on " & "Ne00:" 

如果您只提供系統名稱,Excel將無法找到它並且不會打印。

請注意," on "一塊在中間。這是真正的英文單詞「on」,使「excel打印機名稱」變得人性化。

問題是,這個小塊在每個本地化版本的Excel上都有所不同。因此,想要組成真正的「excel打印機名稱」的代碼需要包含一個巨大的switch,其中所有可能的Excel語言環境都將與「on」的相應翻譯一起列出。我甚至沒有這樣的名單。但是我想要得到它,或者想知道如何在飛行中找出這件作品。 Application.International屬性似乎不包含答案。

回答

0

這傢伙使用註冊表項在

\ HKEY_CURRENT_USER \ SOFTWARE \微軟\的Windows NT \ CURRENTVERSION \設備\

http://www.dailydoseofexcel.com/archives/2008/04/05/getting-the-printer-port/

+0

我知道如何讓打印機的端口。 這傢伙做錯了,順便說一句。出於兼容性原因,正確的方法是使用GetProfileString函數。但我的問題是關於不同的問題。 – GSerg 2010-01-27 21:30:48

+0

對不起,我誤解了這個問題。 – 2010-01-28 16:01:39

相關問題