Porady: Programowane przechodzenie w pętli poprzez znalezione elementy w dokumentach
Find Klasa ma Found właściwość, która zwraca true gdy zostanie znaleziony element poszukiwane.Można w pętli przez wszystkie wystąpienia w Range za pomocą Execute metoda.
Zastosowanie: Informacje przedstawione w tym temacie mają zastosowanie do projektów na poziomie dokumentu i aplikacji obsługiwanych w programach Word 2013 i Word 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacjach pakietu Office i typ projektu.
Pętli znalezionych elementów
Stwierdzenie Range obiektu.
Poniższy przykład kodu służy dostosowywania poziomie dokumentu.
Dim rng As Word.Range = Me.Content
Word.Range rng = this.Content;
Poniższy przykład kodu, można w poziomie aplikacji dodatek.W tym przykładzie użyto aktywnego dokumentu.
Dim rng As Word.Range = Me.Application.ActiveDocument.Content
Word.Document document = this.Application.ActiveDocument; Word.Range rng = document.Content;
Użycie Found właściwość w pętli, aby wyszukać wszystkie wystąpienia ciągu w dokumencie i zwiększyć zmienną liczbę całkowitą o 1 przy każdym ciąg zostanie znaleziony.
rng.Find.ClearFormatting() rng.Find.Forward = True rng.Find.Text = "find me" rng.Find.Execute() Do While rng.Find.Found = True intFound += 1 rng.Find.Execute() Loop
rng.Find.ClearFormatting(); rng.Find.Forward = true; rng.Find.Text = "find me"; rng.Find.Execute( ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); while (rng.Find.Found) { intFound++; rng.Find.Execute( ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); }
Wyświetla liczbę razy ciąg został odnaleziony w oknie komunikatu.
MessageBox.Show("Strings found: " & intFound.ToString())
MessageBox.Show("Strings found: " + intFound.ToString());
Następujące przykłady przedstawiają metody kompletny.
Przykład dostosowywania poziomie dokumentu
Pętli elementów dostosowania poziomu dokumentu
Kompletny kod dla dostosowania poziomu dokumentu można znaleźć w poniższym przykładzie.Aby użyć tego kodu, należy uruchomić go z ThisDocument klasy do projektu.
Private Sub FindLoop() Dim intFound As Integer = 0 Dim rng As Word.Range = Me.Content rng.Find.ClearFormatting() rng.Find.Forward = True rng.Find.Text = "find me" rng.Find.Execute() Do While rng.Find.Found = True intFound += 1 rng.Find.Execute() Loop MessageBox.Show("Strings found: " & intFound.ToString()) End Sub
private void FindLoop() { int intFound = 0; Word.Range rng = this.Content; rng.Find.ClearFormatting(); rng.Find.Forward = true; rng.Find.Text = "find me"; rng.Find.Execute( ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); while (rng.Find.Found) { intFound++; rng.Find.Execute( ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); } MessageBox.Show("Strings found: " + intFound.ToString()); }
Poziom aplikacji dodatek przykład
Do przeglądania elementów w poziomie aplikacji dodatek
Kompletny kod dla dodatku poziomie aplikacji można znaleźć w poniższym przykładzie.Aby użyć tego kodu, należy uruchomić go z ThisAddIn klasy do projektu.
Private Sub FindLoop() Dim intFound As Integer = 0 Dim rng As Word.Range = Me.Application.ActiveDocument.Content rng.Find.ClearFormatting() rng.Find.Forward = True rng.Find.Text = "find me" rng.Find.Execute() Do While rng.Find.Found = True intFound += 1 rng.Find.Execute() Loop MessageBox.Show("Strings found: " & intFound.ToString()) End Sub
private void FindLoop() { int intFound = 0; Word.Document document = this.Application.ActiveDocument; Word.Range rng = document.Content; rng.Find.ClearFormatting(); rng.Find.Forward = true; rng.Find.Text = "find me"; rng.Find.Execute( ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); while (rng.Find.Found) { intFound++; rng.Find.Execute( ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing); } MessageBox.Show("Strings found: " + intFound.ToString()); }
Zobacz też
Zadania
Porady: Programowane wyszukiwanie i zastępowanie tekstu w dokumentach
Porady: Programowane ustawianie opcji wyszukiwania w programie Word
Porady: Programowane definiowanie i zaznaczanie zakresów w dokumentach
Porady: Programowane przywracanie zaznaczenia po wyszukiwaniu