① VBA或C#如何調用WORD圖片格式工具欄設置圖片解析度,批量壓縮圖片
為什麼要調用word的工具欄呢?直接用C#批量處理圖片不就行了嗎
using System.Drawing.Drawing2D;
記得引用這個命名空間
② word中的縮進VBA代碼
With Selection.ParagraphFormat
.LeftIndent = CentimetersToPoints(0) '左縮進為0
.FirstLineIndent = CentimetersToPoints(0) '首行縮進為0
End With
③ vba word 格式調整
留爪、關注、學習。word VBA,定位表格似乎有點困難的,尤其是在不止一張表的情況下。
看看大神如何解答
④ 如何在VBA中調用Word中圖片壓縮功能
感謝樓主,測試成功,Very good!~~~顯然是摘來的內容!
Sub ystp()
For Each pic In ActiveSheet.Shapes
If pic.Type = 13 Then
SendKeys ^{ENTER}, False
Application.CommandBars(Picture).Controls(壓縮圖片(&C)...).Execute
End If
Next
End Sub
⑤ 用vba建立的word文檔不能打開
docx 這個文檔 是一個壓縮文檔,估計這樣保存是有問題的,
需要將 文檔的擴展名 改為 doc
你可以這樣試一試,你用 RAR解壓縮一下 word docx 的文檔(你自己新建一個 word 文檔) 你會發現 它是可以解壓縮的
⑥ VBA在WORD中的應用
vba用來編寫宏程序,處理文本,比如能批量修改某些符號、文字,根據設定自動設定文本、文章格式,檢查文本錯誤等等。
還可以用宏程序查找指定文本、修改特定代碼,轉化為一些特定的公式字元或代號。總之,word里的功能都可以用vba實現,而且是自動運行,不是你想像的那樣手工一個個去修改。
高手可以用來做很多擴展的功能,當然是word相關的。比如加入自己喜歡使用的圖形、處理各種圖片、圖表、剪貼圖、藝術字等等。
⑦ word的vba問題,批量刪除文本,高手支招!
Sub刪除每回下的標題_芐雨()
DimiAsParagraph,nAsLong
Application.ScreenUpdating=False'關閉屏幕刷新
OnErrorResumeNext
ForEachiInActiveDocument.Paragraphs'在活動文檔的段落集合中循環
i.Range.Characters(1).Select'選擇段落第一個字元,目的是為了游標的跳轉
'判斷第一個字元是否等於「●」,第二個字元是否等於「第」
Ifi.Range.Characters(1)="●"Andi.Range.Characters(2)="第"Then
Selection.MoveDownunit:=wdLine,Count:=1'下移一行
Selection.HomeKeyunit:=wdLine'游標到行首
Selection.EndKeyunit:=wdLine,Extend:=wdExtend'選擇游標到行尾
Selection.Delete'刪除
Selection.HomeKeyunit:=wdLine'游標到行首
Selection.EndKeyunit:=wdLine,Extend:=wdExtend'選擇游標到行尾
Selection.Delete
EndIf
Next
Application.ScreenUpdating=True'恢復屏幕刷新
EndSub
代碼如上,不過是以每段來查找第一個和第二個字元,如果原文不是以段落符號分隔每段,代碼無效,所以最好上傳附件。還有,用EXCEL操作也能簡單實現,附動畫操作作參考。
⑧ Excel VBA操作word文件
在 Word 中,幾乎所有的操作都要調用 Document 對象本身或其內容。當您用 VBA 操作 Word 時,Document 對象表示一個打開的文檔,而且所有的 Document 對象都是 Application 對象的 Documents 集合的成員。
文檔是一個由字元、單詞、句子和段落組成的集合,字元組成單詞,單片語成句子,句子組成段落,等等。因此,每一個 Document 對象都具有 Characters、Words、Sentences 和 Paragraghs 四個集合。此外,每個文檔具有一個包含一個或多個節的 Sections 集合,每一個節都有一個包含該節頁眉和頁腳的 HeadersFooters 集合。
注意: 您可以在 Microsoft Office 2000 開發人員對象模型指南(英文)中查閱完整的 Word 對象模型。另外,您也可以使用對象瀏覽器和 Microsoft Word Visual Basic 參考幫助來學習有關具體某個對象、屬性、方法和事件的詳細內容。
通過 VBA 使用 Word 時,Document 對象處於中心位置。如果您要打開文檔或創建新文檔,就要創建新的 Document 對象。每個打開或新創建的文檔均被添加至 Documents 集合。具有焦點的文檔稱為活動文檔,由 ActiveDocument 屬性表示。
Document 對象作為 Documents 集合中的一個成員,您可以通過使用 Document 對象的索引值(Document 對象在 Documents 集合中的位置,1 是集合中的第一個文檔)或名稱來引用它。另外,您也可以使用 ActiveDocument 屬性來引用當前具有焦點的文檔。例如,如果名為 Policies.doc 的文檔是唯一打開的文檔,則以下三個對象變數將全部指向 Policies.doc:
Dim docOne As Word.Document
Dim docTwo As Word.Document
Dim docThree As Word.Document
Set docOne = Documents(1)
Set docTwo = Documents("Policies.doc")
Set docThree = ActiveDocument
一般情況下不要使用 Documents 集合中的索引值來引用文檔,因為當其它文檔打開或關閉時,某個特定文檔的索引值可能會隨之改變。通常,您可以通過使用 ActiveDocument 屬性或使用 Documents 集合的 Add 方法或 Open 方法創建的 Document 對象變數。以下示例顯示了如何使用 ActiveDocument 屬性把一個地址添加到當前具有焦點的文檔中:
With ActiveDocument
.Envelope.Insert Address:="Office Talk" _
& vbCrLf & "One Microsoft Way" & vbCrLf _
& "Redmond, WA 98052", ReturnAddress:= _
"David Shank" & vbCrLf & _
"77 First Street" & vbCrLf & _
"Any Town, USA 12345"
End With
下面的示例說明如何通過使用 Documents 集合的 Open 方法,實例化 Document 對象變數。
Dim docPolicy As Word.Document
Set docPolicy = Documents.Open("c:\my documents\policies.doc")
最後一個示例顯示如何通過使用 Add 方法,為新的空文檔創建 Document 對象的實例。
Dim docPolicy As Word.Document
Set docPolicy = Documents.Add
通過使用 Open 方法打開的文檔,或者通過使用 Add 方法創建的文檔,都將成為用 ActiveDocument 屬性表示的當前活動文檔。如果您想使 Documents 集合里的其它文檔成為活動文檔,可使用 Document 對象的 Active 方法。
一旦您獲取了要操作的 Document 對象,絕大部分您想通過 VBA 進行的工作將涉及文本的操作。首先要指定文檔的一個部分,然後對它進行某些操作。例如,添加或刪除文本,或者設置單詞或字元的格式。您可以使用 Range 或 Selection 這兩個對象來完成很多工作。
Word vba常用語句100句
1、系統參數
(01) Application.ActivePrinter 『獲取當前列印機
(02) Application.Height '當前應用程序文檔的高度
(03) Application.Width 『當前應用程序文檔的寬度
(04) Application.Build 『獲取Word版本號和編譯序號
(05) Application.Caption 『當前應用程序名
(06) Application.DefaultSaveFormat '返回空字元串,表示Word文檔
(07) Application.DisplayRecentFiles '返回是否顯示最近使用的文檔的狀態
(08) Application.Documents.Count '返回當前打開的文檔數
(09) Application.FontNames.Count 『返回當前可用的字體數
(10) Application.Left 『返回當前文檔的水平位置
(11) Application.MacroContainer.FullName '返回當前文檔名,包括所在路徑
Application.MacroContainer.pach '返回當前文檔路徑
Application.ActiveDocument.Path 『獲得文件的相對路徑
(12) Application.NormalTemplate.FullName '返迴文檔標准模板名稱及所在位置
(13) Application.RecentFiles.Count '返回最近打開的文檔數目
(14) Application.System.CountryRegion '返回應用程序所在的地區代碼
(15) Application.System.FreeDiskSpace 『返回應用程序所在磁碟可用空間
(16) Application.System.HorizontalResolution '返回顯示器的水平解析度
(17) Application.System.VerticalResolution '返回顯示器的垂直解析度
(18) Application.System.LanguageDesignation '返回系統所使用的語言
(19) Application.System.MathCoprocessorInstalled 『返回系統是否安裝了數學協處理器
(20) Application.System.OperatingSystem 『返回當前操作系統名
(21) Application.System.ProcessorType '返回計算機處理器名
(22) Application.System.Version 『返回操作系統的版本號
(23) Application.Templates.Count '返回應用程序所使用的模板數
(24) Application.UserName '返回應用程序用戶名
(25) Application.Version 『返回應用程序的版本號
2、Documents/Document對象
(26) ActiveDocument.AttachedTemplate.FullName '返回當前文檔採用的模板名及模板所在位置
(27) ActiveDocument.Bookmarks.Count '返回當前文檔中的書簽數
(28) ActiveDocument.Characters.Count '返回當前文檔的字元數
(29) ActiveDocument.CodeName 『返回當前文檔的代碼名稱
(30) ActiveDocument.Comments.Count 『 返回當前文檔中的評論數
(31) ActiveDocument.Endnotes.Count '返回當前文檔中的章節附註數
(32) ActiveDocument.Fields.Count '返回當前文檔中的域數目
(33) ActiveDocument.Footnotes.Count 『返回當前文檔中的腳注數
(34) ActiveDocument.FullName '返回當前文檔的全名及所在位置
(35) ActiveDocument.HasPassword '當前文檔是否有密碼保護
(36) ActiveDocument.Hyperlinks.Count '返回當前文檔中的鏈接數
(37) ActiveDocument.Indexes.Count '返回當前文檔中的索引數
(38) ActiveDocument.ListParagraphs.Count '返回當前文檔中項目編號或項目符號數
(39) ActiveDocument.ListTemplates.Count '返回當前文檔中使用的列表模板數
(40) ActiveDocument.Paragraphs.Count '返回當前文檔中的段落數
(41) ActiveDocument.Password=XXX '設置打開文件使用的密碼
(42) ActiveDocument.ReadOnly '獲取當前文檔是否為只讀屬性
(43) ActiveDocument.Saved '當前文檔是否被保存
(44) ActiveDocument.Sections.Count '當前文檔中的節數
(45) ActiveDocument.Sentences.Count 『當前文檔中的語句數
(46) ActiveDocument.Shapes.Count '當前文檔中的形狀數 ,圖形?
(47) ActiveDocument.Styles.Count '當前文檔中的樣式數
(48) ActiveDocument.Tables.Count 『當前文檔中的表格數
(49) ActiveDocument.TablesOfAuthorities.Count 『返回當前文檔中的引文目錄數
(50) ActiveDocument.TablesOfAuthoritiesCategories.Count 『返回當前文檔中引文目錄類別數
(51) ActiveDocument.TablesOfContents.Count 『返回當前文檔中的目錄數
(52) ActiveDocument.TablesOfFigures.Count '返回當前文檔中的圖表目錄數
3、Paragraphs/Paragraph對象
(53) Selection.Paragraphs.Count '返回所選區域的段落數
(54) Selection.Paragraphs.First '返回所選區域中的第一段
(55) ActiveDocument.Paragraphs(1).LeftIndent '返回當前文檔中第一段的左縮進值
(56) ActiveDocument.Paragraphs(1).LineSpacing '返回當前文檔中第一段的行距
(57) ActiveDocument.Paragraphs(1).OutlineLevel 『返回或設置當前文檔中第一段的大綱級別
.OutlineLevel = wdOutlineLevel2 『2級
.OutlineLevel = wdOutlineLevel3 『3級
(58) ActiveDocument.Paragraphs(1).RightIndent 『返回當前文檔中第一段的右縮進量
(59) ActiveDocument.Paragraphs(1).SpaceBefore '返回當前文檔中第一段的段前間距
(60) ActiveDocument.Paragraphs(1).SpaceAfter 『返回當前文檔中第一段的段後間距
(61) ActiveDocument.Paragraphs(1).Range.Text '返回當前文檔中第一段的內容
(62) ActiveDocument.Paragraphs(1).Range.Style.NameLocal '返回當前文檔中第一段應用的樣式名
(63) ActiveDocument.Paragraphs(1).Range.Style.Description '返回當前文檔中第一段所應用樣式的詳細描述
(64) ActiveDocument.Paragraphs(1).Range.Style.Font.Name '返回當前文檔中第一段所應用樣式的字體名
(65) ActiveDocument.Paragraphs(1).Range.Style.Font.NameFarEast '返回或設置一種東亞字體名
(66) ActiveDocument.Paragraphs(1).Range.Style.Font.Size '返回或設置當前文檔中第一段所應用樣式的字體大小
(67) ActiveDocument.Paragraphs(1).Range.Style.Font.Spacing '返回或設置字元間距
(68) Selection.Words.Count '所選區域的字數 Sentences對象
(69) Selection.Sentences.Item(1) '所選區域中的第一句的內容 Words對象
(71) ActiveDocument.Words(1).Select '選擇當前文檔中的第一個詞
(72) ActiveDocument.Range.Words(1).InsertAfter "我愛你!" '在當前文檔中的第一個詞後插入「我愛你」
4、Characters對象
(73) Selection.Characters.Count '當前文檔中所選區域的字元數
(74) ActiveDocument.Paragraphs(1).Range.InsertParagraphAfter'在當前文檔的第一段之後插入一個新段落
5、Sections/Section對象
(75) ActiveDocument.Sections.First '當前文檔的第一節
(76) ActiveDocument.Sections.First.PageSetup.BottomMargin '當前文檔第一節所在頁的底邊距
(77) ActiveDocument.Sections.First.PageSetup.LeftMargin '當前文檔第一節所在頁的左邊距
(78) ActiveDocument.Sections.First.PageSetup.RightMargin '當前文檔第一節所在頁的右邊距
(79) ActiveDocument.Sections.First.PageSetup.TopMargin '當前文檔第一節所在頁的頂邊距
(80) ActiveDocument.Sections.First.PageSetup.PaperSize '返回或設置當前文檔第一節所在頁的大小
(81) ActiveDocument.Sections.First.PageSetup.PageHeight '返回或設置當前文檔第一節所在頁的高度
(82) ActiveDocument.Sections.First.PageSetup.PageWidth '返回或設置當前文檔第一節所在頁的寬度
(83) ActiveDocument.Sections.Add Range:=myRange '在當前文檔中添加新節
(84) ActiveDocument.Sections.Item(2) '當前文檔中的第二節
(85) ActiveDocument.Sections.Last.Range.InsertAfter "文檔結束!" '在當前文檔中最後一節的結尾添加文字「文檔結束!」
6、Range對象
(86) ActiveDocument.Range(Start:=0, End:=10) '表示當前文檔前10個字元所組成的一個Range對象
(87) Set myRange = ActiveDocument.Range(Start:=ActiveDocument.Paragraphs(2).Range.Start, _
End:=ActiveDocument.Paragraphs(4).Range.End) '將當前文檔第2段至第4段設置為一個Range對象
(88) ActiveDocument.Paragraphs(1).Range.Copy '復制當前文檔中的第一段
(89) Selection.Copy
Documents.Add.Content.Paste '復制所選內容到新文檔中
(90) ActiveDocument.Bookmarks("Book1").Copy Name:="Book2" '將Book2書簽復制Book1書簽標記的位置
(91) Selection.GoTo What:=wdGoToLine, Which:=wdGoToAbsolute, Count:=4 '將所選內容移至文檔中的第4行
(92) Selection.GoTo What:=wdGoToTable, Which:=wdGoToNext '將所選內容移至下一個表格的第1個單元格
(93) Selection.Range.AutoFormat '為所選內容套用格式
(94) ActiveDocument.Content.Font.Name = "Arial" '將當前文檔的字體設置為斜體
(95) ActiveDocument.Content.Select Selection.Delete '將當前文檔中的內容刪除其它
(96) Documents.Add '添加一個新文檔
(97) Set myTable = ActiveDocument.Tables.Add(Selection.Range, 2, 2) '在當前文檔所選區域添加一個2行2列的表格
7、文件讀寫
(98) Open "C:\my.txt" For Input As #1 '打開一個用於輸入的文件並令其編號為1
(99) Line Input #1, TextLine '讀取被打開用於輸入且編號為1的文件
(100) Close #1 '關閉編號為1的文件