Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Selection.Find funktioniert nicht
15.10.2014 15:23:49 Felix
NotSolved
16.10.2014 09:51:46 TSR
NotSolved

Ansicht des Beitrags:
Von:
Felix
Datum:
15.10.2014 15:23:49
Views:
1534
Rating: Antwort:
  Ja
Thema:
VBA Selection.Find funktioniert nicht

Hallo Leute,

ich will derzeit eine Abfrage in Excel via VBA programmieren, mit der ich auf ein Word-Dokument zugreife, dort einen Namen suche und mir dann die Seitenzahlen, auf denen der Name steht, ausgeben lassen. Soweit so gut. Allerdings schaffe ich es nicht die selection.find methode zum Funktionieren zu bringen. Diesmal bekomme ich den Fehler "Objekt untertsützt diese Eigenschaft oder Methode nicht". 

Hier mein Code (Die problematischen Zeilen habe ich markiert):

Sub Zahlen_hinzufügen()
             
Dim intRowCnt As Integer
Dim AppWD As Object
Dim fn
Dim wdDoc As Object

'''''''''''''''''''''Öfnnen der Word -Datei''''''''''''''''''''
Const StartDrive = "C:"
Const StartDir = "\"
ChDrive StartDrive
ChDir StartDir
fn = Application.GetOpenFilename("Word-Dokumente, *.docx", , "Bitte Datei auswählen")
If fn = False Then Exit Sub 'Abbrechen gedrückt

Set AppWD = CreateObject("Word.Application") 'Word als Object starten

Set wdDoc = AppWD.Documents.Open( _
        Filename:=fn, _
        ConfirmConversions:=False, _
        ReadOnly:=False, _
        AddToRecentFiles:=False, _
        PasswordDocument:="", _
        PasswordTemplate:="", _
        Revert:=False, _
        WritePasswordDocument:="", _
        WritePasswordTemplate:="", _
        Format:=wdOpenFormatAuto, _
        Visible:=True)
 
 '''''''''''''''''''Name aus Excel-Zelle auslesen '''''''''''''''
 
intCol = 1 'Nummer der Spalte in Excel, die ausgelesen werden soll

For intRowCnt = 1 To Cells(Rows.Count, intCol).End(xlUp).Row ' Für jeden Namen in Exceltabelle
    PersonName = Cells(intRowCnt, intCol)

'''''''''''''''''''Suche im aktiven Word-Dokument nach PersonName '''''''''''''''
With wdDoc.Selection.Find
    .ClearFormatting
    .Text = PersonName
    .Execute Forward = True
End With
    
 '''''''''''''''''''Lese die Seitenzahl aus, auf der das Suchergebnis gefunden wurde und schreibe sie in Excel '''''''''''''''
    Cells(intRowCnt, 2) = wdDoc.Selection.Information(wdActiveEndAdjustedPageNumber)

Next

AppWD.Documents(fn).Close SaveChanges:=False
AppWD.Quit
Set AppWD = Nothing

End Sub

 

Hat irgendjemand eine Idee, was das Problem ist und wie man es lösen könnte?

 

Vielen Dank im Voraus,

 

Felix

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot VBA Selection.Find funktioniert nicht
15.10.2014 15:23:49 Felix
NotSolved
16.10.2014 09:51:46 TSR
NotSolved