Memo/2004-05-10
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
]
開始行:
#contents
*Word 関連情報 [#g9ac2d18]
**サンプルコード [#gcce819d]
***ページ単位でファイルに保存するマクロ [#oa872b89]
' ページ単位でファイルに保存するマクロ
Sub PageToDoc()
Dim strFilePath
Dim strPageList
Dim strPageArray
Dim strPageFromTo
Dim nPageFrom
Dim nPageTo
strFilePath = "D:\home\edu\word\test\page_" ' 保存先
strPageList = "1,2-3,4,5-6,7" ' ページ数の指定。
strPageArray = Split(strPageList, ",")
For Each strPageFromTo In strPageArray
GetPageFromTo strPageFromTo, nPageFrom, nPageTo
Debug.Print "nPageFrom = " & nPageFrom & ", " & ...
SaveAsPageFromTo strFilePath, nPageFrom, nPageTo
Next
End Sub
' ページの開始と終了を求める
Function GetPageFromTo(ByVal strPageFromTo, ByRef nPageF...
Dim strPageArray
strPageArray = Split(strPageFromTo, "-")
nPageFrom = -1
nPageTo = -1
' 要素数を求める
nCount = UBound(strPageArray, 1) - LBound(strPageArr...
If nCount = 1 Then
nPageFrom = CInt(strPageArray(0))
nPageTo = strPageArray(0)
ElseIf nCount = 2 Then
nPageFrom = CInt(strPageArray(0))
nPageTo = strPageArray(1)
End If
End Function
' 指定ページをファイルに保存
Function SaveAsPageFromTo(ByVal strFilePath, ByVal nPage...
For i = nPageFrom To nPageTo
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNe...
Selection.GoTo What:=wdGoToBookmark, Name:="\pag...
Selection.Copy ...
If i <> nPageFrom Then
Documents.Open strFilePath & nPageFrom ...
Selection.EndKey Unit:=wdStory ...
Else
Documents.Add DocumentType:=wdNewBlankDocume...
End If
Selection.PasteAndFormat (wdPasteDefault) ...
Selection.MoveDown Unit:=wdParagraph, Count:=1, ...
If i <> nPageFrom Then
ActiveDocument.SaveAs FileName:=strFilePath ...
Else
ActiveDocument.SaveAs FileName:=strFilePath ...
End If
ActiveWindow.Close
Next i
End Function
*VBScript 関連情報 [#tdd35748]
**サンプル [#ad45123b]
***テキストファイルを連結するサンプル [#g784b348]
' AppendFile.vbs
' 使い方:
' 1. DIR_SRC にコピー元のファイルがあるフォルダ名を指定...
' 2. DIR_DST にコピー先のフォルダ名を指定します。
' 3. FILE_ADD に追加するテキストファイルを記述します。
' 4. AppendFile.vbs をダブルクリックします。
' DIR_DST の場所に連結されたファイルが作成されます。
'
Const DIR_SRC = "D:\home\edu\VBScript\AppendFile\src" ' ...
Const DIR_DST = "D:\home\edu\VBScript\AppendFile\dst" ' ...
Const FILE_ADD = "D:\home\edu\VBScript\AppendFile\add.tx...
AppendFile
Sub AppendFile
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Dim folder
Set folder = fso.GetFolder( DIR_SRC )
Dim strFileName ' コピー元のファイル名が入ります
Dim txtFile1
Dim txtFile2
Dim txtFile3
Dim strMargeText ' 文字列連結用変数
For Each strFileName In folder.Files
Set txtFile1 = fso.OpenTextFile( strFileName, 1...
Set txtFile2 = fso.OpenTextFile( FILE_ADD, 1, F...
strMargeText = txtFile1.ReadAll & txtFile2.Read...
Set txtFile3 = fso.CreateTextFile( DIR_DST & "\...
txtFile3.WriteLine( strMargeText )
Next
End Sub
//#comment
終了行:
#contents
*Word 関連情報 [#g9ac2d18]
**サンプルコード [#gcce819d]
***ページ単位でファイルに保存するマクロ [#oa872b89]
' ページ単位でファイルに保存するマクロ
Sub PageToDoc()
Dim strFilePath
Dim strPageList
Dim strPageArray
Dim strPageFromTo
Dim nPageFrom
Dim nPageTo
strFilePath = "D:\home\edu\word\test\page_" ' 保存先
strPageList = "1,2-3,4,5-6,7" ' ページ数の指定。
strPageArray = Split(strPageList, ",")
For Each strPageFromTo In strPageArray
GetPageFromTo strPageFromTo, nPageFrom, nPageTo
Debug.Print "nPageFrom = " & nPageFrom & ", " & ...
SaveAsPageFromTo strFilePath, nPageFrom, nPageTo
Next
End Sub
' ページの開始と終了を求める
Function GetPageFromTo(ByVal strPageFromTo, ByRef nPageF...
Dim strPageArray
strPageArray = Split(strPageFromTo, "-")
nPageFrom = -1
nPageTo = -1
' 要素数を求める
nCount = UBound(strPageArray, 1) - LBound(strPageArr...
If nCount = 1 Then
nPageFrom = CInt(strPageArray(0))
nPageTo = strPageArray(0)
ElseIf nCount = 2 Then
nPageFrom = CInt(strPageArray(0))
nPageTo = strPageArray(1)
End If
End Function
' 指定ページをファイルに保存
Function SaveAsPageFromTo(ByVal strFilePath, ByVal nPage...
For i = nPageFrom To nPageTo
Selection.GoTo What:=wdGoToPage, Which:=wdGoToNe...
Selection.GoTo What:=wdGoToBookmark, Name:="\pag...
Selection.Copy ...
If i <> nPageFrom Then
Documents.Open strFilePath & nPageFrom ...
Selection.EndKey Unit:=wdStory ...
Else
Documents.Add DocumentType:=wdNewBlankDocume...
End If
Selection.PasteAndFormat (wdPasteDefault) ...
Selection.MoveDown Unit:=wdParagraph, Count:=1, ...
If i <> nPageFrom Then
ActiveDocument.SaveAs FileName:=strFilePath ...
Else
ActiveDocument.SaveAs FileName:=strFilePath ...
End If
ActiveWindow.Close
Next i
End Function
*VBScript 関連情報 [#tdd35748]
**サンプル [#ad45123b]
***テキストファイルを連結するサンプル [#g784b348]
' AppendFile.vbs
' 使い方:
' 1. DIR_SRC にコピー元のファイルがあるフォルダ名を指定...
' 2. DIR_DST にコピー先のフォルダ名を指定します。
' 3. FILE_ADD に追加するテキストファイルを記述します。
' 4. AppendFile.vbs をダブルクリックします。
' DIR_DST の場所に連結されたファイルが作成されます。
'
Const DIR_SRC = "D:\home\edu\VBScript\AppendFile\src" ' ...
Const DIR_DST = "D:\home\edu\VBScript\AppendFile\dst" ' ...
Const FILE_ADD = "D:\home\edu\VBScript\AppendFile\add.tx...
AppendFile
Sub AppendFile
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
Dim folder
Set folder = fso.GetFolder( DIR_SRC )
Dim strFileName ' コピー元のファイル名が入ります
Dim txtFile1
Dim txtFile2
Dim txtFile3
Dim strMargeText ' 文字列連結用変数
For Each strFileName In folder.Files
Set txtFile1 = fso.OpenTextFile( strFileName, 1...
Set txtFile2 = fso.OpenTextFile( FILE_ADD, 1, F...
strMargeText = txtFile1.ReadAll & txtFile2.Read...
Set txtFile3 = fso.CreateTextFile( DIR_DST & "\...
txtFile3.WriteLine( strMargeText )
Next
End Sub
//#comment
ページ名: