Thema Datum  Von Nutzer Rating
Antwort
Rot Matchwholeword für Zelleneintrag Tabellensuche
11.08.2021 10:45:56 Chris
Solved
11.08.2021 12:00:57 Werner
NotSolved
11.08.2021 12:07:20 Chris
NotSolved

Ansicht des Beitrags:
Von:
Chris
Datum:
11.08.2021 10:45:56
Views:
92
Rating: Antwort:
 Nein
Thema:
Matchwholeword für Zelleneintrag Tabellensuche

Hallo Zusammen,

Ich zermatere mir jetzt schon seit ein paar Tagen das Hirn über folgendes Problem:

Ich habe für die Arbeit ein Makro erstellt, welches eine Tabelle mit +150 Einträgen nach einem bestimmten Kürzel durchsuchen soll, welches variabel in einer festgelegten Zelle eingetragen werden kann. Wird das Kürzel in einer Zeile gefunden, kopiert es drei Einträge aus der Zeile in ein Array und überträgt diese dann in Zeilen auf einem zweiten Arbeitsblatt, druckt dieses aus und macht mit der nächsten Zeile weiter.

Das funktioniert soweit auch ganz gut. Mein Problem ist, dass das Makro nicht nur explizit nach dem gesuchten Kürzel sucht, sondern nach jeder Zeile, in der das eingetragene Kürzel vorkommt. Sprich ich suche nach dem Kürzel W1, es spuckt mir W1 und VW1 aus.

Ich hab ehrlich gesagt genau 0 Ahnung vom Programmieren und habe mir das Makro in stundenlanger recherchearbeit so zusammengesetzt. Meine Vermutung war, dass irgendwo ein Matchwholeword = true reingehört, bekomme es aber beim besten Willen nicht funktionsfähig nur durch try and error heraus wo. Vielleicht hat von euch ja wer eine Idee. Danke dafür schonmal im Voraus! :)

 


Sub SuchenUndFinden()

'Variablen
Dim finden As Range             'durchsucht Spalten nach Suchbegriffen
Dim treffer As String               'Wo wurde der Begriff gefunden? Angabe der Zelle
Dim Tour()                               'Array: Speichert die gewünschten Einträge
Dim size As Integer                 'passt die Größe des Arrays an

'Programm

Set finden = Columns(1).Find(what:=Range("B23"))      'Hier liegt das Problem, es soll nach genau dem Kürzel in B23 gesucht werden

    If Not finden Is Nothing Then

    treffer = finden.Address        'Speichert die erste Adresse
    MsgBox treffer

      Do
      ReDim Preserve Tour(2, size)
    
           If finden.Value = "" Then
        
               Else
                Tour(0, size) = finden.Offset(0, 2).Value 'Baustelle
                Tour(1, size) = finden.Offset(0, 3).Value 'Startdatum
                Tour(2, size) = finden.Offset(0, 7).Value 'Projektnummer
            
                Worksheets("Blanko Wartungsprotokoll").Range("D3:L3") = Tour(0, 0)
                Worksheets("Blanko Wartungsprotokoll").Range("D4:L4") = Tour(1, 0)
                Worksheets("Blanko Wartungsprotokoll").Range("A2:C2") = Tour(2, 0)

                    Sheets("Blanko Wartungsprotokoll").Select
                    ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
                    IgnorePrintAreas:=False
                
            
                Sheets("Übersicht Kontrolltouren").Select
        
            Erase Tour

        
           End If
           
               
    Set finden = Columns(1).FindNext(finden)
    
    Loop While Not finden Is Nothing And treffer <> finden.Address
    
    
End If

End Sub


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 Matchwholeword für Zelleneintrag Tabellensuche
11.08.2021 10:45:56 Chris
Solved
11.08.2021 12:00:57 Werner
NotSolved
11.08.2021 12:07:20 Chris
NotSolved