Classe Subdocument - subdocumento (Word VBA)
A classe Subdocument representa um subdocumento de um documento ou de um intervalo. O objeto Subdocument é um membro da coleção Subdocuments . A coleção Subdocuments inclui todos os subdocumentos de um intervalo ou de um documento. Para usar uma variável de classe Subdocument, ela primeiro precisa ser instanciada por exemplo
Dim sbd as Subdocument
Set sbd = ActiveDocument.Subdocuments(Index:=1)
For Each
Aqui está um exemplo de processamento dos itens Subdocument em uma coleção.
Dim subdoc As Subdocument
For Each subdoc In ActiveDocument.Subdocuments
subdoc.Range.Select
If subdoc.HasFile = True Then
MsgBox subdoc.Path & Application.PathSeparator & subdoc.Name
Else
MsgBox "This subdocument has not been saved."
End If
Next subdoc
Delete
Exclui o subdocumento especificado.
ActiveDocument.Subdocuments(1).Delete
HasFile
True se o subdocumento especificado tiver sido salvo em um arquivo. Boolean somente leitura.
Dim subLoop As Subdocument
For Each subLoop In ActiveDocument.Subdocuments
subLoop.Range.Select
If subLoop.HasFile = True Then
MsgBox subLoop.Path & Application.PathSeparator _
& subLoop.Name
Else
MsgBox "This subdocument has not been saved."
End If
Next subLoop
Level
Retorna o nível de título usado para criar o subdocumento. Long somente leitura.
i = 1
If ActiveDocument.Subdocuments.Count > = 1 Then
For each s in ActiveDocument.Subdocuments
MsgBox "The heading level for SubDoc " & i _
& " is " & s.Level
i = i + 1
Next s
Else
MsgBox "There are no subdocuments defined."
End If
Locked
True se um subdocumento em um documento mestre estiver protegido. Leitura/gravação Boolean.
If ActiveDocument.Subdocuments(1).Locked = True Then
ActiveDocument.Protect Type:=wdAllowOnlyComments
End If
Name
Retorna o nome do objeto especificado. Cadeia de caracteressomente leitura.
Dim strName As String
strName = ActiveDocument.Subdocuments(1).Name
Open
Abre o subdocumento especificado. Retorna um objeto Document que representa o subdocumento aberto.
Dim doc As Document
Set doc = ActiveDocument.Subdocuments(1).Open()
Path
Retorna o disco ou o caminho da Web para o subdocumento especificado. Cadeia de caracteressomente leitura.
O caminho não inclui um caractere precedente por exemplo, "C:\MSOffice" ou "https://MyServer". Use a propriedade PathSeparator para adicionar o caractere que separa pastas e letras de unidade. Use a propriedade Name para retornar o nome de arquivo sem o caminho.
Dim strPath As String
strPath = ActiveDocument.Subdocuments(1).Path
Range
Retorna um objeto Range que representa a parte de um documento que está contida no subdocumento.
Para obter informações sobre como retornar um intervalo de um documento, consulte o método Range .
Dim rngRange As Range
Set rngRange = ActiveDocument.Subdocuments(1).Range
Split
Divide um subdocumento existente em dois subdocumentos no mesmo nível em modo de documento mestre ou modo de estrutura de tópicos.
A divisão ocorre no início do intervalo especificado. Ocorrerá um erro se o documento não estiver em modo de documento mestre ou de estrutura de tópicos, ou se o intervalo não estiver no início de um parágrafo em um subdocumento.
Split (Range)
Range: O intervalo que, se torna um subdocumento separado quando o subdocumento é divido.
Selection.Range.Subdocuments(1).Split Range:=Selection.Range