轉發
我正在製作一個打印運單信息的「標籤程序」。由Word中的一個表格組成,具有0頁邊距的自定義3x5英寸文檔。複製表的格式化問題
我現在有一個簡單的表格,如果你需要的副本,它會修改,從而使每次打印「件數」時加的小區之一。 1of10,2of10,3of10 .....
雖然這樣做的代碼提交了一個單獨的打印作業,每個「標籤」。這給最終用戶造成了一個問題,他們需要在打印作業之間等待5-10秒。當一次打印幾百個這樣的秒數時,這些秒數就會加起來。
糾正解決方案
要嘗試的解決這個問題,我想使表的副本,使100個標籤將被打印成一個100頁的文件。發現了幾個複製文本頁面的解決方案,但是我有一些表格,它們使事情複雜化。我發現的最接近的解決方案是:
With ActiveDocument
.Tables(1).Range.Copy
.Range.Select
'.Range.InsertAfter (Chr(11))
Selection.Collapse wdCollapseEnd
Selection.Paste
End With
這確實讓表的完美複製但它是合併表一起。所以如果我想循環這個來創建更多的標籤,那麼每次都會將結果加倍,因爲上面的代碼只是複製第一個tabel。
要嘗試解決該問題,我在粘貼前添加了一個換行符(垂直製表符)。您將會看到上述代碼段中的註釋行。這打破了表,但增加了太多的空白。
分頁符似乎就像這裏的解決方案。雖然這些讓表格分手,但他們最終在每個標籤之間創建了一個空白頁面,我從GUI中獲得了足夠的時間清除,更不用說在VBA中。
實際問題
我怎麼能採取完美設計,以適應一個3×5英寸的網頁上,並複製它X倍的表。需要注意的是我需要能夠從程序上找到包含文本文本的單元格。目前,我可以使用這些絕對引用第一個表
ActiveDocument.Tables(1).Cell(5, 1).Range.Text
所以,如果我有例如3個表,我需要能夠調用每個表和編輯Cell(5, 1)
的文本。
如果你問
我知道這個功能最好放在實際的標籤程序像調酒師,但這些費用的錢,該公司將不會分配給我公司使用的唯一標籤內。
我不認爲這應該是一個downvote。我把最基本的信息放在我可以解決的問題上。 – Matt