Selection-Objekt (Word)
Repräsentiert die aktuelle Auswahl in einem Fenster oder Bereich. Bei einer Auswahl handelt es sich entweder um einen ausgewählten (oder hervorgehobenen) Bereich im Dokument oder die Einfügemarke, wenn in dem Dokument nichts ausgewählt ist. Es ist nur ein Objekt Selection pro Dokumentfensterbereich zulässig, und es darf nur ein Objekt Selection in der gesamten Anwendung aktiv sein.
Wichtig
Diese Methode hat sich geändert. Wenn Sie VBA-Auswahlbefehle wie Selection.BoldRun
für Benutzerauswahl mit Kommentaren verwenden, wird keine Fettformatierung für vom Benutzer ausgewählten Text oder dem Selection.TypeTxt
-Befehl mehr angewendet, oder auf der Benutzerauswahl mit Kommentaren wird kein Text mehr eingefügt.
Verwenden Sie die Eigenschaft Selection, um das Objekt Selection zurückzugeben. Wenn mit der Eigenschaft Selection kein Objektqualifizierer verwendet wird, gibt Microsoft Word die Auswahl des aktiven Bereichs im aktiven Dokumentfenster zurück. Im folgenden Beispiel wird die aktuelle Auswahl aus dem aktiven Dokumentfenster kopiert.
Selection.Copy
Im folgenden Beispiel wird die Auswahl aus dem dritten Dokument der Sammlung Documents gelöscht. Das Dokument muss nicht aktiv sein, um auf dessen aktuelle Auswahl zugreifen zu können.
Documents(3).ActiveWindow.Selection.Cut
Im folgenden Beispiel wird die Auswahl aus dem ersten Bereich des aktiven Dokuments kopiert und im zweiten Bereich eingefügt.
ActiveDocument.ActiveWindow.Panes(1).Selection.Copy
ActiveDocument.ActiveWindow.Panes(2).Selection.Paste
Die Eigenschaft Text ist die Standardeigenschaft des Objekts Selection. Mit dieser Eigenschaft können Sie den Text in der aktuellen Auswahl festlegen oder zurückgeben. Im folgenden Beispiel wird die aktuelle Auswahl der Variablen strTemp
zugewiesen und das letzte Zeichen entfernt, sofern es sich dabei um eine Absatzmarke handelt.
Dim strTemp as String
strTemp = Selection.Text
If Right(strTemp, 1) = vbCr Then _
strTemp = Left(strTemp, Len(strTemp) - 1)
Das Objekt Selection verfügt über diverse Methoden und Eigenschaften, mit denen Sie die aktuelle Auswahl reduzieren, erweitern oder in sonstiger Weise ändern können. Im folgenden Beispiel wird die Einfügemarke an das Ende des Dokuments gesetzt, und die letzten drei Zeilen werden ausgewählt.
Selection.EndOf Unit:=wdStory, Extend:=wdMove
Selection.HomeKey Unit:=wdLine, Extend:=wdExtend
Selection.MoveUp Unit:=wdLine, Count:=2, Extend:=wdExtend
Das Objekt Selection verfügt über diverse Methoden und Eigenschaften, mit denen Sie ausgewählten Text in einem Dokument bearbeiten können. Im folgende Beispiel wird den ersten Satz im aktiven Dokument ausgewählt, und durch einen neuen Absatz ersetzt.
Options.ReplaceSelection = True
ActiveDocument.Sentences(1).Select
Selection.TypeText "Material below is confidential."
Selection.TypeParagraph
Im folgenden Beispiel wird der letzte Absatz des ersten Dokuments in der Sammlung Documents gelöscht und am Anfang des zweiten Dokuments eingefügt.
With Documents(1)
.Paragraphs.Last.Range.Select
.ActiveWindow.Selection.Cut
End With
With Documents(2).ActiveWindow.Selection
.StartOf Unit:=wdStory, Extend:=wdMove
.Paste
End With
Das Objekt Selection verfügt über diverse Methoden und Eigenschaften, mit denen Sie die Formatierung der aktuellen Auswahl ändern können. Im folgende Beispiel wird die Schriftart der aktuellen Auswahl von "Times New Roman" in "Tahoma" geändert.
If Selection.Font.Name = "Times New Roman" Then _
Selection.Font.Name = "Tahoma"
Mit Eigenschaften wie Flags, Information und Type können Sie Informationen über die aktuelle Auswahl zurückgeben. Verwenden Sie das folgende Beispiel in einer Prozedur, um zu bestimmen, ob im aktiven Dokument etwas ausgewählt ist. Wenn dies nicht der Fall ist, wird der Rest der Prozedur übersprungen.
If Selection.Type = wdSelectionIP Then
MsgBox Prompt:="You have not selected any text! Exiting procedure..."
Exit Sub
End If
Selbst wenn eine Auswahl zu einer Einfügemarke reduziert wurde, ist sie nicht zwingend leer. Die Eigenschaft Text beispielsweise gibt in diesem Fall dennoch das Zeichen rechts neben der Einfügemarke zurück. Dieses Zeichen erscheint auch in der Sammlung Characters des Objekts Selection. Wenn Sie jedoch Methoden wie Cut oder Copy von einer reduzierten Auswahl aus aufrufen, wird dadurch ein Fehler verursacht.
Der Benutzer kann, z. B. unter Verwendung von ALT-TASTE und Maus, einen Bereich in einem Dokument auswählen, der keinen zusammenhängenden Text darstellt. Da das Verhalten einer solchen Auswahl unvorhersehbar sein kann, sollten Sie in Ihren Code vielleicht einen Schritt aufnehmen, der die Type-Eigenschaft einer Auswahl überprüft, bevor irgendwelche Operationen damit ausgeführt werden (Selection.Type = wdSelectionBlock
).
Ebenso können Auswahlen, die Tabellenzellen enthalten, auch zu unvorhersehbaren Verhalten führen. Die Information-Eigenschaft informiert Sie, ob sich eine Auswahl in einer Tabelle befindet (Selection.Information(wdWithinTable) = True
). Mit dem folgenden Beispiel wird ermittelt, ob eine Auswahl normal ist (d. h. keine Zeile oder Spalte in einer Tabelle, kein vertikaler Textblock) ist. Sie können damit die aktuelle Auswahl testen, bevor irgendwelche Operationen damit ausgeführt werden.
If Selection.Type <> wdSelectionNormal Then
MsgBox Prompt:="Not a valid selection! Exiting procedure..."
Exit Sub
End If
Da Range-Objekte und Selection-Objekte zahlreiche Methoden und Eigenschaften gemeinsam verwenden, sind für das Manipulieren von Dokumenten bevorzugt Range-Objekte zu verwenden, sofern kein Grund besteht, die aktuelle Auswahl physisch zu ändern. Weitere Informationen zu den Objekten Selection und Range finden Sie unter Arbeiten mit dem Objekt "Selection" und Arbeiten mit Range-Objekten.
- BoldRun
- Calculate
- ClearCharacterAllFormatting
- ClearCharacterDirectFormatting
- ClearCharacterStyle
- ClearFormatting
- ClearParagraphAllFormatting
- ClearParagraphDirectFormatting
- ClearParagraphStyle
- Collapse
- ConvertToTable
- Copy
- CopyAsPicture
- CopyFormat
- CreateAutoTextEntry
- CreateTextbox
- Cut
- Delete
- DetectLanguage
- EndKey
- EndOf
- EscapeKey
- Expand
- ExportAsFixedFormat
- ExportAsFixedFormat2
- Extend
- GoTo
- GoToEditableRange
- GoToNext
- GoToPrevious
- HomeKey
- InRange
- InsertAfter
- InsertBefore
- InsertBreak
- InsertCaption
- InsertCells
- InsertColumns
- InsertColumnsRight
- InsertCrossReference
- InsertDateTime
- InsertFile
- InsertFormula
- InsertNewPage
- InsertParagraph
- InsertParagraphAfter
- InsertParagraphBefore
- InsertRows
- InsertRowsAbove
- InsertRowsBelow
- InsertStyleSeparator
- InsertSymbol
- InsertXML
- InStory
- IsEqual
- ItalicRun
- LtrPara
- LtrRun
- Move
- MoveDown
- MoveEnd
- MoveEndUntil
- MoveEndWhile
- MoveLeft
- MoveRight
- MoveStart
- MoveStartUntil
- MoveStartWhile
- MoveUntil
- MoveUp
- MoveWhile
- Next
- NextField
- NextRevision
- NextSubdocument
- Paste
- PasteAndFormat
- PasteAppendTable
- PasteAsNestedTable
- PasteExcelTable
- PasteFormat
- PasteSpecial
- Previous
- PreviousField
- PreviousRevision
- PreviousSubdocument
- ReadingModeGrowFont
- ReadingModeShrinkFont
- RtlPara
- RtlRun
- Select
- SelectCell
- SelectColumn
- SelectCurrentAlignment
- SelectCurrentColor
- SelectCurrentFont
- SelectCurrentIndent
- SelectCurrentSpacing
- SelectCurrentTabs
- SelectRow
- SetRange
- Shrink
- ShrinkDiscontiguousSelection
- Sort
- SortAscending
- SortByHeadings
- SortDescending
- SplitTable
- StartOf
- ToggleCharacterCode
- TypeBackspace
- TypeParagraph
- TypeText
- WholeStory
- Active
- Application
- BookmarkID
- Bookmarks
- Borders
- Zellen
- Characters
- ChildShapeRange
- Columns
- ColumnSelectMode
- Comments
- Creator
- Document
- Editors
- End
- EndnoteOptions
- Endnotes
- EnhMetaFileBits
- ExtendMode
- Fields
- Suchen
- FitTextWidth
- Flags
- Font
- FootnoteOptions
- Footnotes
- FormattedText
- FormFields
- Frames
- HasChildShapeRange
- HeaderFooter
- HTMLDivisions
- Hyperlinks
- Information
- InlineShapes
- IPAtEndOfLine
- IsEndOfRowMark
- LanguageDetected
- LanguageID
- LanguageIDFarEast
- LanguageIDOther
- NoProofing
- OMaths
- Orientation
- PageSetup
- ParagraphFormat
- Paragraphs
- Parent
- PreviousBookmarkID
- Range
- Rows
- Sections
- Sentences
- Shading
- ShapeRange
- Start
- StartIsActive
- StoryLength
- StoryType
- Style
- Tables
- Text
- TopLevelTables
- Typ
- WordOpenXML
- Words
- XML
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.