vba編程word
1. 如何在Word中打開VBA編程窗口
一、編製程序
1.啟動Word,連續點擊「工具」,「宏」,「錄制新宏...」,在彈出的對話框中填寫宏名(此例為「作文稿紙」),選擇宏要保存的位置(可以保存在模板中,也可以保存在當前文檔中),如圖1所示。
6.雙擊命令按鈕CommandButton1,錄入以下代碼:
Private Sub CommandButton1_Click()
Dim n As Integer '定義一個變數為整數型
n = 1
ActiveDocument.Tables.Add Range:=Selection.Range, NumRows:=Val(TextBox1.Text) * 2 + 1, NumColumns _
:=Val(TextBox2.Text), DefaultTableBehavior:=wdWord9TableBehavior, AutoFitBehavior:=wdAutoFitFixed
Selection.EndKey Unit:=wdRow, Extend:=True
Selection.Cells.Borders(wdBorderVertical).LineStyle = wdLineStyleNone
Selection.Tables(1).Rows.HeightRule = wdRowHeightExactly
'設定表格行高為固定值
Selection.Tables(1).Rows.Height = CentimetersToPoints(Val(TextBox3.Text))
'設置表格行高為設置值,作為行間距
Selection.Tables(1).Rows(1).Height = CentimetersToPoints(Val(TextBox4.Text))
'設置第一行行高為設置值
Do While n < Val(TextBox1.Text) + 1
Selection.EndKey Unit:=wdLine
Selection.MoveRight Unit:=wdCharacter, Count:=2
'將插入點移至下一行
Selection.Tables(1).Rows(2 * n).Height = Selection.Tables(1).Columns(1).PreferredWidth
'設行高等於列寬
Selection.EndKey Unit:=wdRow, Extend:=True
Selection.EndKey Unit:=wdLine
Selection.MoveRight Unit:=wdCharacter, Count:=2
'將插入點移至下一行
Selection.EndKey Unit:=wdRow, Extend:=True
Selection.Cells.Borders(wdBorderVertical).LineStyle = wdLineStyleNone
'去除此行的內部框線,只余邊框
n = n + 1
Loop
Selection.Tables(1).Rows(Val(TextBox1.Text) * 2 + 1).Height = CentimetersToPoints(Val(TextBox4.Text))
'設置末行高為設置值
Selection.EndKey Unit:=wdRow, Extend:=True
Selection.Cells.Borders(wdBorderVertical).LineStyle = wdLineStyleNone
Selection.Tables(1).Rows.Alignment = wdAlignRowCenter
'表格居中
With Selection.Tables(1)
.Borders(wdBorderLeft).LineWidth = wdLineWidth150pt
.Borders(wdBorderRight).LineWidth = wdLineWidth150pt
.Borders(wdBorderTop).LineWidth = wdLineWidth150pt
.Borders(wdBorderBottom).LineWidth = wdLineWidth150pt
'設定表格邊框為粗線
End With
Selection.EndKey Unit:=wdLine
Unload Me
End Sub
2. 關於Word中 的VBA 編程
發兩個文件到[email protected],應該可以實現。以下是word中的主要代碼:
sub
test()
dim
xcel
as
new
excel.application
dim
xwbk
as
excel.workbook
dim
xsht
as
excel.worksheet
set
xwbk
=
xcel.workbooks.open("d:\xxx\memo+browse.xlsx",
0,
1)
set
xsht
=
xwbk.sheets(1)
msgbox
xsht.range("a2")
xwbk.close
0
xcel.quit
set
xcel
=
nothing
end
sub
3. vba如何寫word
在工作表中,點擊菜單欄【開發工具】,在其工具欄內,點擊【visual basic】!
4. 怎麼查看word用VBA編寫了的程序
通常在 Word 中錄制的宏會被保存到 Normal 文檔裡面的模塊中,而 ThisDocument 裡面也可以寫 VBA 代碼,也就是說,所有這些可編輯的對象、模塊或類模塊都可以寫 VBA 代碼。
5. 如何用vba編程對word和excel進行文件保護
保護工作簿(Protect方法) Sub ProtectWorkbook() MsgBox "保護工作簿結構,密碼為123" ActiveWorkbook.Protect Password:="123", Structure:=True MsgBox "保護工作簿窗口,密碼為123" ActiveWorkbook.Protect Password:="123", Windows:=True MsgBox "保護工作簿結構和窗口,密碼為123" ActiveWorkbook.Protect Password:="123", Structure:=True, Windows:=True End Sub 示例說明:使用Protect方法來保護工作簿,帶有三個可選參數,參數Password指明保護工作簿密碼,要解除工作簿保護應輸入此密碼;參數Structure設置為True則保護工作簿結構,此時不能對工作簿中的工作表進行插入、復制、刪除等操作;參數Windows設置為True則保護工作簿窗口,此時該工作簿右上角的最小化、最大化和關閉按鈕消失。 解除工作簿保護(UnProtect方法) Sub UnprotectWorkbook() MsgBox "取消工作簿保護" ActiveWorkbook.Unprotect "123" End Sub word的應該一樣吧
6. 怎樣在Word中用VBA操作表格
1、在新工作表的Sheet1上點擊右鍵
7. 用vba編寫代碼使Word能夠自動排版
自動排版,只能根據實際情況的需要,在既定的簡單條件下可以實現!
如果范圍很大,或者想實現隨便拿一個文檔,都能自動排版。
這就不是5分的問題,這完全是一個商業軟體,要知道全世界有多少人每天在苦逼的排版,排完再改還得再排。。。無限苦逼中。。。求大神解救!
8. VBA編程 復制文件 (word 宏)
提示個思路,你看看正確不?
因Normal.dot在Word打開文件時,正在使用中,故不能正確復制或操作;
可不可以這樣,在autoclose中,先關閉Word中使用的所有文檔,
包括空白文檔,然後進行FileCopy操作,如此,可能會成功。
因要外出,就不測試了,你試試看看,或可給我留言。
9. 如何用VBA代碼實現WORD自動排版
工具-宏-設置成低 to crazy0ball 你的問題我在網上查了好多資料,但是到目前為止, 還沒有辦法直接解決這個問題的辦法,估計是很難, 或者說沒有辦法直接解決,因為,在你之前, 在好幾個OFFICE專業論壇上已經有人就這問題進行了探討, 沒有一個最終的解決方案. 其實,說到低,就是因為WORD默認的宏安全級別為高,因此, 想用VBA解決不可能,同樣,如果是問卷調查,為了方便性, 我們一般不會要求客戶把自己WORD的宏降為低. 我甚至找了有沒有辦法解決將WORD宏直接將為低等辦法, 還有一種方式,就是通過數字簽名,但好象需要付費, 具體的你可以查詢一些資料. 最好想到了將WORD封裝成EXE文件,我試了一下,好象可以, 我將WORD宏設成高,用生成的EXE打開後, 雖然在左上腳顯示控制項工具箱,但已經不是設計模式了. 你同樣把你的WORD設成默認的高,保存後退出, 利用工具生成EXE文件,然後打開看看,如果是設計模式, 取消設計模式,保存退出,再打開~~ 我這測試一次成功,希望你也可以,就是不知道這樣你是否能接受, 其實只要不影響你其他內容,用WORD,還是封裝後的EXE, 至少個人感覺利用工具封裝是個不錯的選擇,除了解決你的問題外, 還可以多的技術含量,呵呵~~~