ð» Word ã³ãŒãïŒWord VBAã®ã³ãŒãäŸé

æ¬èšäºã§ã¯ãWord VBAïŒVisual Basic for ApplicationsïŒã®ã³ãŒãäŸéã玹ä»ããŸããWordã¯ãããžãã¹ãæè²ãç 究ãªã©ãæ§ã ãªåéã§åºã䜿ãããŠããã¯ãŒãããã»ããµã§ããVBAã¯ãWordã®æ©èœãèªååããå¹ççã«äœæ¥ãè¡ãããã®ããã°ã©ãã³ã°èšèªã§ãããã®èšäºã§ã¯ãåå¿è ããäžçŽè ãŸã§ãããŸããŸãªã¬ãã«ã®ãŠãŒã¶ãŒã圹ç«ã€ãšæããWord VBAã®ã³ãŒãäŸãæäŸããŸãããããã®ã³ãŒãã¯ãããã¥ã¡ã³ãã®ãã©ãŒããããç·šéãããŒã¿ã®æœåºãåæãªã©ã®äœæ¥ãèªååããã®ã«åœ¹ç«ã¡ãŸããæ¯éã掻çšãã ããã
- Word VBAã®ã³ãŒãäŸéã§ã¯ãã©ã®ãããªæ©èœãå®è£
ããããã®ãµã³ãã«ã³ãŒããæäŸãããŠããŸããã Word ææžã®èªåçæãšç·šéã«åœ¹ç«ã€Word VBAã®ã³ãŒãäŸã䜿çšããããã®äž»ãªå©ç¹ã¯äœã§ããã Word VBAã®ã³ãŒãäŸéã䜿çšããŠãWord ã®ã»ãã¥ãªãã£èšå®ã匷åããæ¹æ³ãæããŠãã ããã Word VBAã®ã€ãã³ããã³ãã©ãŒã䜿çšããŠãWord ææžã®ä¿åæã«èªåçã«åŠçãå®è¡ããæ¹æ³ã¯ãããŸããã
- Word VBAã®ã³ãŒãäŸéã§ã¯ãã©ã®ãããªæ©èœãå®è£ ããããã®ãµã³ãã«ã³ãŒããæäŸãããŠããŸããã
- Word ææžã®èªåçæãšç·šéã«åœ¹ç«ã€Word VBAã®ã³ãŒãäŸã䜿çšããããã®äž»ãªå©ç¹ã¯äœã§ããã
- Word VBAã®ã€ãã³ããã³ãã©ãŒã䜿çšããŠãWord ææžã®ä¿åæã«èªåçã«åŠçãå®è¡ããæ¹æ³ã¯ãããŸããã
- ð» Word ã³ãŒãïŒWord VBAã®ã³ãŒãäŸé
- ãããã質å
Word VBAã®ã³ãŒãäŸéã§ã¯ãã©ã®ãããªæ©èœãå®è£ ããããã®ãµã³ãã«ã³ãŒããæäŸãããŠããŸããã Word ææžã®èªåçæãšç·šéã«åœ¹ç«ã€Word VBAã®ã³ãŒãäŸã䜿çšããããã®äž»ãªå©ç¹ã¯äœã§ããã Word VBAã®ã³ãŒãäŸéã䜿çšããŠãWord ã®ã»ãã¥ãªãã£èšå®ã匷åããæ¹æ³ãæããŠãã ããã Word VBAã®ã€ãã³ããã³ãã©ãŒã䜿çšããŠãWord ææžã®ä¿åæã«èªåçã«åŠçãå®è¡ããæ¹æ³ã¯ãããŸããã
Word VBAã®ã³ãŒãäŸéã§ã¯ãã©ã®ãããªæ©èœãå®è£ ããããã®ãµã³ãã«ã³ãŒããæäŸãããŠããŸããã
Word VBAã®ã³ãŒãäŸéã«ã¯ãWord ææžã®èªåçæãç·šéãããŒã¿æœåºãããŒã¿ããŒã¹æ¥ç¶ãªã©ãããŸããŸãªæ©èœãå®è£ ããããã®ãµã³ãã«ã³ãŒããæäŸãããŠããŸããäŸãã°ãææžã®èªåçæã§ã¯ããã³ãã¬ãŒãã䜿çšããŠææžãçæããããããŒã¿ ãœãŒã¹ããããŒã¿ãæœåºããŠææžã«æ¿å ¥ãããããããšãã§ããŸãã
- ææžã®èªåçæïŒãã³ãã¬ãŒãã䜿çšããŠææžãçæãããµã³ãã«ã³ãŒããæäŸãããŠããŸãã
- ææžã®ç·šéïŒç·šéæ©èœã䜿çšããŠææžãç·šéãããµã³ãã«ã³ãŒããæäŸãããŠããŸãã
- ããŒã¿æœåºïŒããŒã¿ ãœãŒã¹ããããŒã¿ãæœåºããŠææžã«æ¿å ¥ãããµã³ãã«ã³ãŒããæäŸãããŠããŸãã
Word ææžã®èªåçæãšç·šéã«åœ¹ç«ã€Word VBAã®ã³ãŒãäŸã䜿çšããããã®äž»ãªå©ç¹ã¯äœã§ããã
Word ææžã®èªåçæãšç·šéã«åœ¹ç«ã€Word VBAã®ã³ãŒãäŸã䜿çšããããšã§ãçç£æ§ãåäžããæéãççž®ãããã³ã¹ããåæžãããŸããããã«ããšã©ãŒãæžãããäžè²«æ§ãä¿ã€ããšãã§ããŸããWord VBAã®ã³ãŒãäŸã䜿çšããããšã§ãèªååãå®çŸããå¹çãåäžããŸãã
- çç£æ§ã®åäžïŒèªååã«ãããçç£æ§ãåäžããŸãã
- æéã®ççž®ïŒèªååã«ãããæéãççž®ãããŸãã
- ã³ã¹ãã®åæžïŒèªååã«ãããã³ã¹ããåæžãããŸãã
Word VBAã®ã€ãã³ããã³ãã©ãŒã䜿çšããŠãWord ææžã®ä¿åæã«èªåçã«åŠçãå®è¡ããæ¹æ³ã¯ãããŸããã
Word VBAã®ã€ãã³ããã³ãã©ãŒã䜿çšããŠãWord ææžã®ä¿åæã«èªåçã«åŠçãå®è¡ããããšãã§ããŸããBeforeSave ã€ãã³ããã³ãã©ãŒã䜿çšããŠãææžã®ä¿ååã«åŠçãå®è¡ããããšãã§ããŸãããŸããAfterSave ã€ãã³ããã³ãã©ãŒã䜿çšããŠãææžã®ä¿ååŸã«åŠçãå®è¡ããããšãã§ããŸãã
- BeforeSave ã€ãã³ããã³ãã©ãŒïŒææžã®ä¿ååã«åŠçãå®è¡ããããšãã§ããŸãã
- AfterSave ã€ãã³ããã³ãã©ãŒïŒææžã®ä¿ååŸã«åŠçãå®è¡ããããšãã§ããŸãã
- ã€ãã³ããã³ãã©ãŒã®ç»é²ïŒã€ãã³ããã³ãã©ãŒãç»é²ããå¿ èŠããããŸãã
ð» Word ã³ãŒãïŒWord VBAã®ã³ãŒãäŸé
Word VBAïŒVisual Basic for ApplicationsïŒã¯ãMicrosoft Wordã§ãã䜿çšããŠäœæ¥ãèªååããããã®ããã°ã©ãã³ã°èšèªã§ããWord VBAã䜿çšãããšãææžã®äœæãç·šéãæŽåœ¢ãªã©ã®ç¹°ãè¿ãäœæ¥ãèªååã§ããŸããæ¬èšäºã§ã¯ãWord VBAã®ã³ãŒãäŸãããã€ã玹ä»ããŸãã
Wordææžã®äœæãšä¿å
Word VBAã䜿çšãããšãããã°ã©ã ããWordææžãäœæããä¿åããããšãã§ããŸãã以äžã¯ãæ°ããWordææžãäœæããããã¹ããè¿œå ããŠããã¡ã€ã«ãä¿åããã³ãŒãäŸã§ãã
ã³ãŒãäŸ |
Sub CreateAndSaveDocument() Dim doc As Document Set doc = Documents.Add doc.Range.Text = ããã¯ãµã³ãã«ã®Wordææžã§ãã doc.SaveAs2 C:SampleDocument.docx doc.Close End Sub |
ãã®ã³ãŒããå®è¡ãããšãæ°ããWordææžãäœæãããæå®ãããããã¹ããè¿œå ãããŠãC:SampleDocument.docx ã«ä¿åãããŸãã
ææžã®å 容ãæ€çŽ¢ã»çœ®æ
Word VBAã䜿çšãããšãææžã®å 容ãæ€çŽ¢ããæå®ãããããã¹ããå¥ã®ããã¹ãã«çœ®æããããšãã§ããŸãã以äžã¯ãææžå 㧠æ€çŽ¢ããã¹ã ã 眮æããã¹ã ã«çœ®æããã³ãŒãäŸã§ãã
ã³ãŒãäŸ |
Sub SearchAndReplace() With ActiveDocument.Content.Find .Text = æ€çŽ¢ããã¹ã .Replacement.Text = 眮æããã¹ã .Execute Replace:=wdReplaceAll End With End Sub |
ãã®ã³ãŒããå®è¡ãããšãã¢ã¯ãã£ããªææžå ã® æ€çŽ¢ããã¹ã ããã¹ãŠ 眮æããã¹ã ã«çœ®æãããŸãã
è¡šã®äœæãšç·šé
Word VBAã䜿çšãããšãWordææžã«è¡šãäœæããç·šéããããšãã§ããŸãã以äžã¯ã3è¡2åã®è¡šãäœæããã»ã«ã«ããã¹ããè¿œå ããã³ãŒãäŸã§ãã
ã³ãŒãäŸ |
Sub CreateTable() Dim tbl As Table Set tbl = ActiveDocument.Tables.Add(Range:=Selection.Range, NumRows:=3, NumColumns:=2) tbl.Cell(1, 1).Range.Text = åå tbl.Cell(1, 2).Range.Text = 幎霢 tbl.Cell(2, 1).Range.Text = å±±ç°å€ªé tbl.Cell(2, 2).Range.Text = 30 tbl.Cell(3, 1).Range.Text = éŽæšè±å tbl.Cell(3, 2).Range.Text = 25 End Sub |
ãã®ã³ãŒããå®è¡ãããšãã¢ã¯ãã£ããªææžã«3è¡2åã®è¡šãäœæãããæå®ãããããã¹ããã»ã«ã«å ¥åãããŸãã
ææžã®å°å·èšå®
Word VBAã䜿çšãããšãææžã®å°å·èšå®ãå€æŽããããšãã§ããŸãã以äžã¯ãææžã®å°å·åãã暪åãã«èšå®ããçšçŽãµã€ãºãA4ã«å€æŽããã³ãŒãäŸã§ãã
ã³ãŒãäŸ |
Sub SetPrintSettings() With ActiveDocument.PageSetup .Orientation = wdOrientLandscape .PaperSize = wdPaperA4 End With End Sub |
ãã®ã³ãŒããå®è¡ãããšãã¢ã¯ãã£ããªææžã®å°å·åãã暪åãã«èšå®ãããçšçŽãµã€ãºãA4ã«å€æŽãããŸãã
ææžã®ä¿è·
Word VBAã䜿çšãããšãææžãä¿è·ããããšãã§ããŸãã以äžã¯ãææžãèªã¿åãå°çšã§ä¿è·ããã³ãŒãäŸã§ãã
ã³ãŒãäŸ |
Sub ProtectDocument() ActiveDocument.Protect Password:=password, Type:=wdAllowOnlyReading End Sub |
ãã®ã³ãŒããå®è¡ãããšãã¢ã¯ãã£ããªææžãèªã¿åãå°çšã§ä¿è·ããããã¹ã¯ãŒããèšå®ãããŸãã
ãããã質å
Word VBAã䜿çšããŠããã¥ã¡ã³ãå ã®ç¹å®ã®æååããã¹ãŠçœ®æããæ¹æ³ã¯?
Word VBAã䜿çšããŠããã¥ã¡ã³ãå ã®ç¹å®ã®æååããã¹ãŠçœ®æããã«ã¯ãReplaceã¡ãœãããå©çšããŸããå ·äœçã«ã¯ã以äžã®ãããªã³ãŒãã䜿çšããŸãã vb With ActiveDocument.Content.Find .Text = 眮æå ã®æåå .Replacement.Text = 眮æå ã®æåå .Execute Replace:=wdReplaceAll End With ãã®ã³ãŒãã¯ãã¢ã¯ãã£ããªããã¥ã¡ã³ãå ììã眮æå ã®æååããæ€çŽ¢ãããããã眮æå ã®æååãã«çœ®æããŸããwdReplaceAllã¯ããã¹ãŠã®æ€çŽ¢çµæã眮æããããšãæå®ããŠããŸãã
Word VBAã§è¡šãäœæããæ¹æ³ã¯?
Word VBAã§è¡šãäœæããã«ã¯ãTables.Addã¡ãœããã䜿çšããŸãã以äžã«ã3è¡2åã®è¡šãäœæããã³ãŒãäŸã瀺ããŸãã vb Dim tbl As Table Set tbl = ActiveDocument.Tables.Add(Selection.Range, 3, 2) ãã®ã³ãŒãã¯ãã¢ã¯ãã£ããªããã¥ã¡ã³ãã®çŸåšã®éžæäœçœ®ã«ã3è¡2åã®è¡šãè¿œå ããŸããè¡šãªããžã§ã¯ãã¯tblå€æ°ã«æ ŒçŽããããããåŸã§ã»ã«ã«ã¢ã¯ã»ã¹ããããè¡šã®æžåŒèšå®ãå€æŽãããããããšãã§ããŸãã
Word VBAã§çŸåšã®ããŒãžçªå·ãååŸããæ¹æ³ã¯?
Word VBAã§çŸåšã®ããŒãžçªå·ãååŸããã«ã¯ãSelection.Informationããããã£ã䜿çšããŸããå ·äœçã«ã¯ã以äžã®ãããªã³ãŒãã䜿çšããŸãã vb Dim currentPage As Integer currentPage = Selection.Information(wdActiveEndPageNumber) ãã®ã³ãŒãã¯ãçŸåšã®éžæäœçœ®ã®ããŒãžçªå·ãååŸããcurrentPageå€æ°ã«æ ŒçŽããŸãããã®å€æ°ã䜿çšããŠãããŒãžçªå·ã«åºã¥ããŠç¹å®ã®åŠçãè¡ãããšãã§ããŸãã
Word VBAã§ããã¥ã¡ã³ãã®æçµããŒãžã«ç§»åããæ¹æ³ã¯?
Word VBAã§ããã¥ã¡ã³ãã®æçµããŒãžã«ç§»åããã«ã¯ãGoToã¡ãœããã䜿çšããŸãã以äžã«ãæçµããŒãžã«ç§»åããã³ãŒãäŸã瀺ããŸãã vb ActiveDocument.Content.GoTo What:=wdGoToPage, Which:=wdGoToLast ãã®ã³ãŒãã¯ãã¢ã¯ãã£ããªããã¥ã¡ã³ãã®æçµããŒãžã«ç§»åããŸããwdGoToPageã¯ãããŒãžã移åããããšãæå®ããŠãããwdGoToLastã¯ãæåŸã®ããŒãžã«ç§»åããããšãæå®ããŠããŸãã
ð» Word ã³ãŒãïŒWord VBAã®ã³ãŒãäŸé ã«é¡äŒŒããä»ã®èšäºãç¥ãããå Žåã¯ãWord åºæ¬æäœ ã«ããŽãªã«ã¢ã¯ã»ã¹ããŠãã ããã
ã³ã¡ã³ããæ®ã
é¢é£èšäº