Nasıl yapılır: Word Belgelerine Program Aracılığıyla Metin Ekleme

Microsoft Office Word belgelerini metin eklemenin üç ana yolu vardır:

  • Aralığa metin ekleme.

  • Aralıktaki bir metni yeni bir metinle değiştirme.

  • İmlecin veya seçimin olduğu yere metin eklemek için Selection nesnesinin TypeText yöntemi kullanılır.

[!NOT]

Ayrıca, içerik denetimlerine ve yer işaretlerine de metin ekleyebilirsiniz.Daha fazla bilgi için, bkz. İçerik Denetimleri ve Yer İşareti Denetimi.

Uygulama hedefi: Bu konudaki bilgiler, Word 2013 ve Word 2010 için belge düzeyi projeler ve uygulama düzeyi projelere yöneliktir. Daha fazla bilgi edinmek için, bkz. Office Uygulaması ve Proje Türüne Göre Kullanılabilir Özellikler.

Aralığa Metin Ekleme

Belgeye bir metin eklemek için Range nesnesinin Text özelliğini kullanın.

Aralığa metin eklemek için

  1. Belgenin başında bir aralık belirleyip New Text metnini ekleyin.

    Aşağıdaki kod örneği belge düzeyi özelleştirmelerinde kullanılabilir.

    Dim rng As Word.Range = Me.Range(Start:=0, End:=0)
    rng.Text = " New Text "
    
    object start = 0; 
    object end = 0; 
    
    Word.Range rng = this.Range(ref start, ref end); 
    rng.Text = "New Text"; 
    

    Aşağıdaki kod örneği uygulama düzeyi eklentilerinde kullanılabilir.Bu kodda etkin belge kullanılır.

    Dim rng As Word.Range = Me.Application.ActiveDocument.Range(Start:=0, End:=0)
    rng.Text = " New Text "
    
    Word.Range rng = this.Application.ActiveDocument.Range(0, 0);
    rng.Text = "New Text";
    
  2. Eklenen metninden bir karakter daha geniş bir Range nesnesini seçin.

    rng.Select()
    
    rng.Select();
    

Aralıktaki Bir Metni Değiştirme

Eğer belirlenmiş aralık metin içeriyorsa aralıktaki bütün metinler eklenen metinle değiştirilir.

Aralıkta bir metni değiştirmek için

  1. Belgedeki ilk 12 karakteri içeren bir Range nesnesini oluşturun.

    Aşağıdaki kod örneği belge düzeyi özelleştirmelerinde kullanılabilir.

    Dim rng As Word.Range = Me.Range(Start:=0, End:=12)
    
    object start = 0; 
    object end = 12; 
    
    Word.Range rng = this.Range(ref start, ref end); 
    

    Aşağıdaki kod örneği uygulama düzeyi eklentilerinde kullanılabilir.Bu kodda etkin belge kullanılır.

    Dim rng As Word.Range = Me.Application.ActiveDocument.Range(Start:=0, End:=12)
    
    Word.Range rng = this.Application.ActiveDocument.Range(0, 12);
    
  2. Bu karakterleri New Text dizgisiyle değiştirin.

    rng.Text = " New Text "
    
    rng.Text = "New Text"; 
    
  3. Aralığı seçin.

    rng.Select()
    
    rng.Select();
    

TypeText Kullanarak Metin Ekleme

TypeText yöntemi seçimin olduğu yere metin ekler.Kullanıcının bilgisayarındaki seçenek ayarlarına bağlı olarak TypeText farklı davranışlar sergiler.Aşağıdaki yordamdaki kod bir Selection nesne değişkeni bildirin ve Overtype seçeneğini açıksa kapatır.Overtype seçeneği etkinleştirilmişse imlecin yanındaki metnin üzerine yazılır.

TypeText yöntemini kullanarak metin eklemek için

  1. Bir Selection nesne değişkeni bildirin.

    Dim currentSelection As Word.Selection = Application.Selection
    
    Word.Selection currentSelection = Application.Selection; 
    
  2. Overtype seçeneğini açıksa kapatın.

    If Application.Options.Overtype Then
        Application.Options.Overtype = False 
    End If
    
    if (Application.Options.Overtype) 
    { 
        Application.Options.Overtype = false; 
    } 
    
  3. Geçerli seçimin bir ekleme noktası olup olmadığına bakın.

    Eğer öyleyse kod TypeText kullanarak bir cümle ve TypeParagraph kullanarak bir paragraf işareti ekler.

    With currentSelection
    
        ' Test to see if selection is an insertion point. 
        If .Type = Word.WdSelectionType.wdSelectionIP Then
            .TypeText("Inserting at insertion point. ")
            .TypeParagraph()
    
    // Test to see if selection is an insertion point. 
    if (currentSelection.Type == Word.WdSelectionType.wdSelectionIP) 
    { 
        currentSelection.TypeText("Inserting at insertion point. ");
        currentSelection.TypeParagraph(); 
    } 
    
  4. ElseIf bloğundaki kod seçimin normal bir seçim olup olmadığına bakar.Eğer öyleyse, başka bir If bloğu ReplaceSelection seçeneğinin açık olup olmadığını kontrol eder.Eğer açık ise kod, seçimi metnin seçili bloğunun başındaki bir ekleme noktasına daraltmak için seçimin Collapse yöntemini kullanır.Metni ve paragraf işaretini ekleyin.

    ElseIf .Type = Word.WdSelectionType.wdSelectionNormal Then 
        ' Move to start of selection. 
        If Application.Options.ReplaceSelection Then
            .Collapse(Direction:=Word.WdCollapseDirection.wdCollapseStart)
        End If
        .TypeText("Inserting before a text block. ")
        .TypeParagraph()
    
    else  
        if (currentSelection.Type == Word.WdSelectionType.wdSelectionNormal)
        { 
            // Move to start of selection. 
            if (Application.Options.ReplaceSelection)
            { 
                object direction = Word.WdCollapseDirection.wdCollapseStart;
                currentSelection.Collapse(ref direction);
            }
            currentSelection.TypeText("Inserting before a text block. ");
            currentSelection.TypeParagraph();
        }
    
  5. Eğer seçim bir ekleme noktası veya seçili metin bloğu değilse Else bloğundaki kod hiçbir şey yapmaz.

    Else 
        ' Do nothing. 
    End If
    
    else
    {
        // Do nothing.
    }
    

Ayrıca Selection nesnesinin klavyenizdeki geri al tuşunun işlevini gören TypeBackspace yöntemini de kullanabilirsiniz.Ancak iş metin ekleme ve değiştirmeye geldiğinde Range nesnesi daha fazla denetim sunar.

Aşağıdaki örnekte tam kod gösterilmektedir.Bu kod örneğini kullanmak için projenizdeki ThisDocument veya ThisAddIn sınıfından kodu çalıştırın.

Friend Sub SelectionInsertText()
    Dim currentSelection As Word.Selection = Application.Selection

    ' Store the user's current Overtype selection 
    Dim userOvertype As Boolean = Application.Options.Overtype

    ' Make sure Overtype is turned off. 
    If Application.Options.Overtype Then
        Application.Options.Overtype = False 
    End If 

    With currentSelection

        ' Test to see if selection is an insertion point. 
        If .Type = Word.WdSelectionType.wdSelectionIP Then
            .TypeText("Inserting at insertion point. ")
            .TypeParagraph()

        ElseIf .Type = Word.WdSelectionType.wdSelectionNormal Then 
            ' Move to start of selection. 
            If Application.Options.ReplaceSelection Then
                .Collapse(Direction:=Word.WdCollapseDirection.wdCollapseStart)
            End If
            .TypeText("Inserting before a text block. ")
            .TypeParagraph()

        Else 
            ' Do nothing. 
        End If 
    End With 

    ' Restore the user's Overtype selection
    Application.Options.Overtype = userOvertype
End Sub
private void SelectionInsertText() 
{ 
    Word.Selection currentSelection = Application.Selection; 

    // Store the user's current Overtype selection 
    bool userOvertype = Application.Options.Overtype;

    // Make sure Overtype is turned off. 
    if (Application.Options.Overtype) 
    { 
        Application.Options.Overtype = false; 
    } 

    // Test to see if selection is an insertion point. 
    if (currentSelection.Type == Word.WdSelectionType.wdSelectionIP) 
    { 
        currentSelection.TypeText("Inserting at insertion point. ");
        currentSelection.TypeParagraph(); 
    } 
    else  
        if (currentSelection.Type == Word.WdSelectionType.wdSelectionNormal)
        { 
            // Move to start of selection. 
            if (Application.Options.ReplaceSelection)
            { 
                object direction = Word.WdCollapseDirection.wdCollapseStart;
                currentSelection.Collapse(ref direction);
            }
            currentSelection.TypeText("Inserting before a text block. ");
            currentSelection.TypeParagraph();
        }
        else
        {
            // Do nothing.
        }

    // Restore the user's Overtype selection
    Application.Options.Overtype = userOvertype;
}

Ayrıca bkz.

Görevler

Nasıl yapılır: Belgelerde Metni Program Aracılığıyla Biçimlendirme

Nasıl yapılır: Belgelerde Aralıkları Program Aracılığıyla Tanımlama ve Seçme

Nasıl yapılır: Belgelerde Aralıkları Program Aracılığıyla Genişletme